Attention ça va faire mal
voilà mon problème (et oui encore)
dans une table j'ai
1 carotte
2 tomate
3 oignon
4 poulet
comme vous l'avez compris il y a un champ ID et un champ NOM
un script génère une liste à partir des entrées de cette table
-carotte
-tomate
-oignon
-poulet
un script de drag and drop me permet de modifier cette liste
un nouvel ordre apparait par exemple
-tomate
-carotte
-oignon
-poulet
une variable me renvoi les nouveaux id sous forme d'une liste
ici c'est 2,1,3,4 (car le 1(carotte) et le 2(tomate) ont été interchangés)
voici mon code
Code :
- <? echo $_POST['hiddenNodeIds']; // ma liste
- $explode = explode(",", $_POST['hiddenNodeIds']);
- echo "<hr />";
- $ningun=0;
- foreach($explode as $value)
- {
- $ningun++;
- $query78 = "UPDATE xouuox_com SET id=\"$ningun\" WHERE id=\"$value\"";
- echo "<br />".$value."--->";
- echo "le champ $value passe en $ningun";
- mysql_query($query78) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
- }
- ?>
|
donc j'obtiens
2 -->le champ 2 passe 1
1 -->le champ 1 passe 2
3 -->le champ 3 passe 3
4 -->le champ 4 passe 4
or quand j'effectue les requetes (une par une puisque c'est une boucle)
le deux passe un
mais la deuxieme instruction c'est 1 --> 2
donc je me retrouve avec
2 carotte
2 tomate
3 oignon
4 poulet
vous comprenez ?
en gros il faudrai executer toutes les requete d'update d'id en meme temps ....
Message édité par M Orthographe le 24-07-2006 à 23:09:30