Problème delete en boucle...
Résolu/Fermé
rirififiloulou3349
Messages postés
8
Date d'inscription
dimanche 6 janvier 2013
Statut
Membre
Dernière intervention
22 janvier 2013
-
21 janv. 2013 à 21:30
rirififiloulou3349 Messages postés 8 Date d'inscription dimanche 6 janvier 2013 Statut Membre Dernière intervention 22 janvier 2013 - 22 janv. 2013 à 10:41
rirififiloulou3349 Messages postés 8 Date d'inscription dimanche 6 janvier 2013 Statut Membre Dernière intervention 22 janvier 2013 - 22 janv. 2013 à 10:41
A voir également:
- Problème delete en boucle...
- Just delete me - Guide
- Hiberfil.sys delete - Guide
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
- Mon PC s'allume puis s'éteint tout seul. Que faire ? ✓ - Forum Matériel & Système
3 réponses
ljm972
Messages postés
254
Date d'inscription
vendredi 23 février 2007
Statut
Membre
Dernière intervention
6 décembre 2021
29
22 janv. 2013 à 01:01
22 janv. 2013 à 01:01
Salut,
tu as mis le nom de table entre quote
'". $table_pn ."' => ". $table_pn ."
tu as mis le nom de table entre quote
'". $table_pn ."' => ". $table_pn ."
ThEBiShOp
Messages postés
8378
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
8 février 2021
1 566
22 janv. 2013 à 08:56
22 janv. 2013 à 08:56
Bonjour,
le problème doit venir en grande partie de ce que ljm972 a souligné.
En dehors de ça, ta boucle est bizarre, un do while pour des requêtes c'est plus qu'inhabituel, tu fais $i++ et $i = $i+1, tu cherches à augmenter $i de 2 ?
d'une façon plus général, lorsque tu as un soucis avec une requête sql, l'idéal c'est de la mettre dans une variable et de faire afficher cette variable pour la tester dans phpmyadmin, de cette façon, les éventuelles erreurs vont te sembler plus évidentes
le problème doit venir en grande partie de ce que ljm972 a souligné.
En dehors de ça, ta boucle est bizarre, un do while pour des requêtes c'est plus qu'inhabituel, tu fais $i++ et $i = $i+1, tu cherches à augmenter $i de 2 ?
d'une façon plus général, lorsque tu as un soucis avec une requête sql, l'idéal c'est de la mettre dans une variable et de faire afficher cette variable pour la tester dans phpmyadmin, de cette façon, les éventuelles erreurs vont te sembler plus évidentes
rirififiloulou3349
Messages postés
8
Date d'inscription
dimanche 6 janvier 2013
Statut
Membre
Dernière intervention
22 janvier 2013
22 janv. 2013 à 10:41
22 janv. 2013 à 10:41
J'ai trouvé mon problème.
Bien que la remarque de ljm972 était fondée, mon problème venait de ma boucle qui donnait comme condition $i<13.
En effet, j'ai 13 colonnes dans ma table, mais toutes ne sont pas remplies...
Donc forcément dès qu'une colonne était vide, la requête sur une table non définie ne pouvait pas fonctionner.
Donc voici comment j'ai procédé :
if ((isset($_GET['id_mission'])) && ($_GET['id_mission'] != "")) {
while ($row_supprimer_mission['equip_'$i]) {
$table_pn = $row_supprimer_mission['equip_'.$i];
$updateSQL_table = sprintf("DELETE FROM '". $table_pn ."' WHERE id_mission =%s AND annee_rema =%s",
GetSQLValueString($_GET['id_mission'], "int"),
GetSQLValueString($_GET['annee_rema'], "int"));
mysql_select_db($database_HelirisQ, $HelirisQ);
$Result2_gestion_appareil = mysql_query($updateSQL_table, $HelirisQ) or die(mysql_error());
}
}
Merci pour l'info ThEBiShOp car c'est en affichant mes requêtes que je me suis aperçu qu'une l'une d'elle ne comportait pas de table.
Bien que la remarque de ljm972 était fondée, mon problème venait de ma boucle qui donnait comme condition $i<13.
En effet, j'ai 13 colonnes dans ma table, mais toutes ne sont pas remplies...
Donc forcément dès qu'une colonne était vide, la requête sur une table non définie ne pouvait pas fonctionner.
Donc voici comment j'ai procédé :
if ((isset($_GET['id_mission'])) && ($_GET['id_mission'] != "")) {
while ($row_supprimer_mission['equip_'$i]) {
$table_pn = $row_supprimer_mission['equip_'.$i];
$updateSQL_table = sprintf("DELETE FROM '". $table_pn ."' WHERE id_mission =%s AND annee_rema =%s",
GetSQLValueString($_GET['id_mission'], "int"),
GetSQLValueString($_GET['annee_rema'], "int"));
mysql_select_db($database_HelirisQ, $HelirisQ);
$Result2_gestion_appareil = mysql_query($updateSQL_table, $HelirisQ) or die(mysql_error());
}
}
Merci pour l'info ThEBiShOp car c'est en affichant mes requêtes que je me suis aperçu qu'une l'une d'elle ne comportait pas de table.