Bonjour tout le monde,
J'ai une liste de sélection.
Dans cette liste, je permets à certains administrateurs de supprimer des valeurs.
Le problème est que quand je supprime une valeur, j'ai un blanc dans la liste déroulante car j'ai un for qui va de 1 à n (n valant le nombre d'éléments).
Si j'ai :
1,2,3,4,5 et que je supprime le 4, mon n vaudra 4 j'aurai donc 1,2,3,4 pour le for et dans ma liste 1,2,3,5.
L'ID 5 n'étant pas trouvé, j'ai une ligne blanche.
Je dois donc reconstruire la lise de sélection dans la base de données en modifiant les ID.
Pour cela, j'ai fait ceci :
l'écho m'informe ce message d'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 $i=1 while($row = mysql_fetch_array($query_select)) { $sql_update = "UPDATE manips SET ID = ".$i; echo $sql_update; $query_sql_update = mysql_query($sql_update); //création de la liste déroulante des étudiants non clôturés $return .=$row["ID"].':"'.$row["nom_manip"].'",'; $i++; }
La ligne 23 correspond à celle-ci :<br />
<b>Parse error</b>: parse error in <b>C:\wamp\www\APK\AJAX\Supprimer_manip.php</b> on line <b>23</b><br />
Deux questions :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 while($row = mysql_fetch_array($query_select))
1) n'y aurait-il pas une solution plus "simple" pour reconstruire les id ?
2) si la réponse à la question 1 est négative, sauriez-vous svp me dire où j'ai fait une erreur ?
Voici le code de la génération de la liste de sélection pour être complet :
Merci d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 for($o=1; $o<=$count_manips;$o++) { $sql_manips = 'SELECT * FROM manips WHERE ID = '.$o; echo $sql_manips; $query_manips = mysql_query($sql_manips); $nombre_manips = mysql_num_rows($query_manips); $res_manips = mysql_fetch_array($query_manips); echo '<OPTION VALUE="'.$res_manips['nom_manip'].'">'.$res_manips['nom_manip'].'</OPTION>'; }
beegees
Partager