<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Commentaires sur : [tuto jquery] drag ‘n drop avec sauvegarde automatique en base de données (2/2)</title>
	<atom:link href="http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/feed/" rel="self" type="application/rss+xml" />
	<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/</link>
	<description></description>
	<lastBuildDate>Sat, 27 Feb 2010 15:53:47 +0200</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>Par : Emeric</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-262</link>
		<dc:creator>Emeric</dc:creator>
		<pubDate>Tue, 14 Apr 2009 07:38:06 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-262</guid>
		<description>Salut...
beau travail =)
J&#039;aimerais savoir si tu avais un script identique sous Flex... J&#039;ai un projet en cours et je me casse la tête sur ça. Je dois faire un drag and drop qui, pour le drag, récupère une liste dans un fichier XML, et pour le drop, modifie un autre fichier XML. J&#039;ai pris pour exemple une liste d&#039;ingrédients, on sélectionne les ingrédients (dans ingredients.xml) nécessaires à une recette pour les mettre dans le fichier recette.xml.
J&#039;ai un drag and drop classique avec une liste de &quot;string&quot; qu&#039;on déplace mais rien de bien excitant..
;)</description>
		<content:encoded><![CDATA[<p>Salut&#8230;<br />
beau travail =)<br />
J&#8217;aimerais savoir si tu avais un script identique sous Flex&#8230; J&#8217;ai un projet en cours et je me casse la tête sur ça. Je dois faire un drag and drop qui, pour le drag, récupère une liste dans un fichier XML, et pour le drop, modifie un autre fichier XML. J&#8217;ai pris pour exemple une liste d&#8217;ingrédients, on sélectionne les ingrédients (dans ingredients.xml) nécessaires à une recette pour les mettre dans le fichier recette.xml.<br />
J&#8217;ai un drag and drop classique avec une liste de &laquo;&nbsp;string&nbsp;&raquo; qu&#8217;on déplace mais rien de bien excitant..<br />
 <img src='http://antoine.guiral.info/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Antoine</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-148</link>
		<dc:creator>Antoine</dc:creator>
		<pubDate>Tue, 24 Jun 2008 10:50:41 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-148</guid>
		<description>Salut Boulbi,
je n&#039;ai jamais testé avec du XML mais a priori ça doit être simple il suffit juste de modifier le script php que l&#039;on appel au moment du drop : au lieu de faire un insert/update/delete dans une base de donnée tu modifie le DOM de ton XML. 

En ce qui concerne drupal, regarde si il existe des plugins qui ne fotn pas ce que tu veux...je n&#039;ai jamais utilisé ce CMS mais cela doit être applicable...Si tu test tu me tiens au courant? je mettrais a jour le billet ;-) 

Si tu as des questions n&#039;hésites pas A+</description>
		<content:encoded><![CDATA[<p>Salut Boulbi,<br />
je n&#8217;ai jamais testé avec du XML mais a priori ça doit être simple il suffit juste de modifier le script php que l&#8217;on appel au moment du drop : au lieu de faire un insert/update/delete dans une base de donnée tu modifie le DOM de ton XML. </p>
<p>En ce qui concerne drupal, regarde si il existe des plugins qui ne fotn pas ce que tu veux&#8230;je n&#8217;ai jamais utilisé ce CMS mais cela doit être applicable&#8230;Si tu test tu me tiens au courant? je mettrais a jour le billet <img src='http://antoine.guiral.info/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  </p>
<p>Si tu as des questions n&#8217;hésites pas A+</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Boulbi</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-147</link>
		<dc:creator>Boulbi</dc:creator>
		<pubDate>Tue, 24 Jun 2008 02:38:01 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-147</guid>
		<description>Je me demandais si il etait facile de sauvegarder en xml plûtot que dans une bdd ? est ce que ton script est compatible drupal ? 
Merci d&#039;avance ^^ 6</description>
		<content:encoded><![CDATA[<p>Je me demandais si il etait facile de sauvegarder en xml plûtot que dans une bdd ? est ce que ton script est compatible drupal ?<br />
Merci d&#8217;avance ^^ 6</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Guiral antoine</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-85</link>
		<dc:creator>Guiral antoine</dc:creator>
		<pubDate>Mon, 21 Apr 2008 19:12:19 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-85</guid>
		<description>Pas de problème, c&#039;est déjà parti! Bon courage!</description>
		<content:encoded><![CDATA[<p>Pas de problème, c&#8217;est déjà parti! Bon courage!</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : clonike</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-84</link>
		<dc:creator>clonike</dc:creator>
		<pubDate>Mon, 21 Apr 2008 19:08:42 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-84</guid>
		<description>Le site pour télécharger le fichier interface est down depuis ce matin :( (enfin j&#039;essaye d&#039;y accéder depuis ce matin).
Y&#039;a t-il moyen de se procurer les fichiers ailleurs ? ou qu&#039;on me les transmettent ?
Merci :)</description>
		<content:encoded><![CDATA[<p>Le site pour télécharger le fichier interface est down depuis ce matin <img src='http://antoine.guiral.info/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  (enfin j&#8217;essaye d&#8217;y accéder depuis ce matin).<br />
Y&#8217;a t-il moyen de se procurer les fichiers ailleurs ? ou qu&#8217;on me les transmettent ?<br />
Merci <img src='http://antoine.guiral.info/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Guiral antoine</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-83</link>
		<dc:creator>Guiral antoine</dc:creator>
		<pubDate>Fri, 11 Apr 2008 17:28:18 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-83</guid>
		<description>Salut stay,
oui c&#039;est possible ;-) Par contre prend bien soin de mettre à jour tes urls vers les fichiers : &quot;traitement.php&quot; deviendra &quot;tonDossier/traitement.php&quot;.

Bon courage et à bientôt!

PS : reviens vite ou abonnes toi au flux si tu veux suivre le prochain tuto sur la navigation ajax non intrusive.</description>
		<content:encoded><![CDATA[<p>Salut stay,<br />
oui c&#8217;est possible <img src='http://antoine.guiral.info/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Par contre prend bien soin de mettre à jour tes urls vers les fichiers : &laquo;&nbsp;traitement.php&nbsp;&raquo; deviendra &laquo;&nbsp;tonDossier/traitement.php&nbsp;&raquo;.</p>
<p>Bon courage et à bientôt!</p>
<p>PS : reviens vite ou abonnes toi au flux si tu veux suivre le prochain tuto sur la navigation ajax non intrusive.</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : stay</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-82</link>
		<dc:creator>stay</dc:creator>
		<pubDate>Fri, 11 Apr 2008 14:23:11 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-82</guid>
		<description>Salut,

Est-il possible de mettre dans un dossier le fichier traitement.php ?

Merci</description>
		<content:encoded><![CDATA[<p>Salut,</p>
<p>Est-il possible de mettre dans un dossier le fichier traitement.php ?</p>
<p>Merci</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Guiral antoine</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-81</link>
		<dc:creator>Guiral antoine</dc:creator>
		<pubDate>Tue, 08 Apr 2008 10:00:47 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-81</guid>
		<description>salut,

bon c&#039;est bien si tu as avancé!
Tu pourrais nous mettre un lien vers ce que tu as fais pour qu&#039;on puisse voir? :-p

Ensuite si tu veux me contacter par mail pas de prob, ça sera plu simple pour envoyer du code la ca merde un peu -_-

Bye</description>
		<content:encoded><![CDATA[<p>salut,</p>
<p>bon c&#8217;est bien si tu as avancé!<br />
Tu pourrais nous mettre un lien vers ce que tu as fais pour qu&#8217;on puisse voir? :-p</p>
<p>Ensuite si tu veux me contacter par mail pas de prob, ça sera plu simple pour envoyer du code la ca merde un peu -_-</p>
<p>Bye</p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Callec Emmanuel</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-80</link>
		<dc:creator>Callec Emmanuel</dc:creator>
		<pubDate>Tue, 08 Apr 2008 09:29:33 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-80</guid>
		<description>Arf il m&#039;a ignoré certaine balise :
&lt;b&gt;Alors je me suis dit “il faut pouvoir charger les nouvelles données dans div class=&quot;recette_ingredient&quot; “&lt;/b&gt;</description>
		<content:encoded><![CDATA[<p>Arf il m&#8217;a ignoré certaine balise :<br />
<b>Alors je me suis dit “il faut pouvoir charger les nouvelles données dans div class=&nbsp;&raquo;recette_ingredient&nbsp;&raquo; “</b></p>
]]></content:encoded>
	</item>
	<item>
		<title>Par : Callec Emmanuel</title>
		<link>http://antoine.guiral.info/2008/03/09/tuto-jquery-drag-%e2%80%98n-drop-avec-sauvegarde-automatique-en-base-de-donnees-22/comment-page-1/#comment-79</link>
		<dc:creator>Callec Emmanuel</dc:creator>
		<pubDate>Tue, 08 Apr 2008 09:26:23 +0000</pubDate>
		<guid isPermaLink="false">http://guiralantoine.wordpress.com/?p=55#comment-79</guid>
		<description>Salut Antoine,

Bon, hier j&#039;ai passé toute mon après midi à réfléchir à ce script, comme toi je me suis dit que c&#039;était au moment de cloner les éléments que tout devrait se passer.
Bon je rappel que je suis nul en ajax et que syntaxiquement parlant je penses que l&#039;on peut améliorer encore le truc.

Pour commencer j&#039;ai créer un style &lt;b&gt;.drag2{height:20px;width:60px; background-color:#FF0000;}&lt;/b&gt; ce qui sous-entend qu&#039;une fois ce style appliqué ton élément n&#039;est plus dropable mais dans mon cas c&#039;est pas un problème, sinon il suffit d&#039;ajouter &lt;b&gt;background-color:#FF0000;&lt;/b&gt; directement dans ton div

Au niveau de la boucle située dans &lt;b&gt;&lt;/b&gt; j&#039;ai rajouté ce petit bout de code php
&lt;code&gt;
while($data=mysql_fetch_assoc($req_ingredients))
{
	//On regarde si cet ingredient est déjà dans la table recette
	$sql_ingredient=&quot;select * from recette_ingredient where refid_ingredient=&quot;.$data[&#039;id_ingredient&#039;].&quot;&quot;;
	$req_recettes_2=mysql_query($sql_ingredient);
	$nombre_ingredient = mysql_num_rows($req_recettes_2);

	if($nombre_ingredient != &quot;0&quot;)
	{
echo&#039;&#039;.$data[&#039;ingredient&#039;].&#039;
&#039;;
	}
	else
	{
echo&#039;&#039;.$data[&#039;ingredient&#039;].&#039;
&#039;;
	}
}
&lt;/code&gt;

Pour le moment il m&#039;affiche en rouge les ingrédients uniquement si je recharge la page dans son intégralité, c&#039;est pas top.

Alors je me suis dit &quot;il faut pouvoir charger les nouvelles données dans &lt;b&gt;&lt;/b&gt;&quot;, on peu peut-être lui faire faire un &quot;refresh&quot; mais j&#039;ai pas vérifié si c&#039;était possible.

Donc tout d&#039;abord je crée une page &lt;b&gt;scriptboucle.php&lt;/b&gt; dans laquelle je remet la boucle qui sera rechargée

Dans le script Ajax je rajoute &lt;b&gt;$(&quot;.ingredient&quot;).load(&quot;scriptboucle.php&quot;);&lt;/b&gt; juste en dessous des deux appels &lt;b&gt;$.get(&quot;traitement.php&quot;...&lt;/b&gt; comme ça, ça recharge quand on ajoute et quand on enlève un ingrédient.

Un problème se pose lorsque l&#039;on recharge, la connexion à la base de donnée et script.js sautent. je rajoute donc dans ma page &lt;b&gt;scriptboucle.php&lt;/b&gt;
&lt;code&gt;
// on se connecte à MySQL
$mysql_link=mysql_connect(”localhost”, “root”, “”);
//on selectionne notre base de donnée
mysql_select_db(”tuto_drag”, $mysql_link);

//requete pour les ingredients
$sql=&#039;select * from ingredients order by ingredient&#039;;
$req_ingredients=mysql_query($sql);

echo &#039;&#039;;
&lt;/code&gt;

Et voilà, le script est opérationnel.
Bon je le répète on peut CERTAINEMENT améliorer encore tout ça.

Manu</description>
		<content:encoded><![CDATA[<p>Salut Antoine,</p>
<p>Bon, hier j&#8217;ai passé toute mon après midi à réfléchir à ce script, comme toi je me suis dit que c&#8217;était au moment de cloner les éléments que tout devrait se passer.<br />
Bon je rappel que je suis nul en ajax et que syntaxiquement parlant je penses que l&#8217;on peut améliorer encore le truc.</p>
<p>Pour commencer j&#8217;ai créer un style <b>.drag2{height:20px;width:60px; background-color:#FF0000;}</b> ce qui sous-entend qu&#8217;une fois ce style appliqué ton élément n&#8217;est plus dropable mais dans mon cas c&#8217;est pas un problème, sinon il suffit d&#8217;ajouter <b>background-color:#FF0000;</b> directement dans ton div</p>
<p>Au niveau de la boucle située dans <b></b> j&#8217;ai rajouté ce petit bout de code php<br />
<code><br />
while($data=mysql_fetch_assoc($req_ingredients))<br />
{<br />
	//On regarde si cet ingredient est déjà dans la table recette<br />
	$sql_ingredient="select * from recette_ingredient where refid_ingredient=".$data['id_ingredient']."";<br />
	$req_recettes_2=mysql_query($sql_ingredient);<br />
	$nombre_ingredient = mysql_num_rows($req_recettes_2);</p>
<p>	if($nombre_ingredient != "0")<br />
	{<br />
echo''.$data['ingredient'].'<br />
';<br />
	}<br />
	else<br />
	{<br />
echo''.$data['ingredient'].'<br />
';<br />
	}<br />
}<br />
</code></p>
<p>Pour le moment il m&#8217;affiche en rouge les ingrédients uniquement si je recharge la page dans son intégralité, c&#8217;est pas top.</p>
<p>Alors je me suis dit &laquo;&nbsp;il faut pouvoir charger les nouvelles données dans <b></b>&laquo;&nbsp;, on peu peut-être lui faire faire un &laquo;&nbsp;refresh&nbsp;&raquo; mais j&#8217;ai pas vérifié si c&#8217;était possible.</p>
<p>Donc tout d&#8217;abord je crée une page <b>scriptboucle.php</b> dans laquelle je remet la boucle qui sera rechargée</p>
<p>Dans le script Ajax je rajoute <b>$(&nbsp;&raquo;.ingredient&nbsp;&raquo;).load(&nbsp;&raquo;scriptboucle.php&nbsp;&raquo;);</b> juste en dessous des deux appels <b>$.get(&nbsp;&raquo;traitement.php&nbsp;&raquo;&#8230;</b> comme ça, ça recharge quand on ajoute et quand on enlève un ingrédient.</p>
<p>Un problème se pose lorsque l&#8217;on recharge, la connexion à la base de donnée et script.js sautent. je rajoute donc dans ma page <b>scriptboucle.php</b><br />
<code><br />
// on se connecte à MySQL<br />
$mysql_link=mysql_connect(”localhost”, “root”, “”);<br />
//on selectionne notre base de donnée<br />
mysql_select_db(”tuto_drag”, $mysql_link);</p>
<p>//requete pour les ingredients<br />
$sql='select * from ingredients order by ingredient';<br />
$req_ingredients=mysql_query($sql);</p>
<p>echo '';<br />
</code></p>
<p>Et voilà, le script est opérationnel.<br />
Bon je le répète on peut CERTAINEMENT améliorer encore tout ça.</p>
<p>Manu</p>
]]></content:encoded>
	</item>
</channel>
</rss>
