URGENT!! problème lors d'un effacement d'un enregistrement [Résolu]

Signaler
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Salut à tous, j'ai un petit problème. Je récupere des valeurs d'une table, et j'ai une liste sous cette forme:


echo ' <FORM name=retour action=supprimer_user.php>';

echo '<select name="num">';

while ($val = mysql_fetch_array($result))

{

echo '"<option value="'.$val["numU"].'">'.$val["numU"].','.$val["nomV"].'</option>"';

}

echo ' </select> ';

echo ' ';

echo ' </FORM>';


& quand je supprime il m'affiche l'erreur suivante :


Erreur SQL!

delete from user where numU =

Erreur de syntaxe près de '' à
la ligne 1



ça fait un moment que je galère avec ça donc merci de me donner la réponse.

Merci

--=Ak=-

16 réponses

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Ton html est pourrave...tu devrais rectifier ca : balises en minuscules, attributs entre double quotes, etc...

D'ailleurs c'est pour ca que ca ne fonctionne pas.

un <form...> doit avoir une methode : POST ou GET.

Quand tu n'en specifies pas (et il FAUT la specifier...), par defaut, c'est GET...et non pas POST.

Donc en effet, $_POST['numU'] n'existe pas.

$_GET['numU'] oui.
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,



si tu montrais plutot ta requete delete...
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008

lol$req "delete from user where numU ".$_POST['numU'];


--=Ak=-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
$req = "delete from user where numU ='".$_POST['numU']."'";
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Salut,



$req "delete from user where numU'".$_POST['numU']."'";


ça fonctionne ?
<hr size="2" width="100%">




<li>Entraide, dépannage et vulgarisation informatique: Mon site de vulgarisation informatique</li>
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008

arf c tellement logique !!

le problème c'est qu'il me dit que l'index numU est indéfini !

et que sa ne supprime pas


--=Ak=-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Dans ton formulaire, je ne vois pas de variable numU...donc ca me semble logique.

Ton select s'appelle num.
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008

le prob c que j'ai peur que sa supprime tout si je met <select name="numU">';

comment le définir?


--=Ak=-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Ce sont des boutons radios, donc ca ne supprimera que celui qui est coche avec

$_POST['num'].
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Et puis si tu n'as pas confiance, fais d'abord un test :-) (Il ne faut
d'ailleurs jamais faire confiance et toujours tester :-) )
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008

$req = "delete from user where numU ='".$_POST['numU']."'";



1er : numU est un entier donc pas la peine de mettre les ''!

2nd : j'ai définit numU mais il me dit toujours qu'il n'est pas défini en faisant



echo '
';




--=Ak=-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Si c'est un entier, effectivement. Si tant est que le champ soit bien un type int dans ta table.

Mets ton code complet stp : le formulaire, son traitement, et ta requete.

Si numU n'est pas defini, c'est peut-etre que la soumission de ton formulaire se passe mal.
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008

<?php

$query="SELECT * FROM user where groupe='visit'";

$result = mysql_query($query);

echo ' <FORM name=retour action=supprimer_user.php>';

echo '<select name="numU">';

while ($val = mysql_fetch_array($result))

{

echo '"<option value="'.$val["numU"].'">'.$val["numU"].' , '.$val["nomV"].'</option>"';

}

echo ' </select> ';

echo ' ';

echo ' </FORM>';



mysql_close($cnx); ?>




//supprimer_user.php

<?php



$cnx = mysql_connect('localhost','root','');

mysql_select_db('admin',$cnx);

$req "delete from user where numU".$_POST['numU'];



$res =
mysql_query($req) or die("Erreur
SQL!
".$req."
".mysql_error());

echo "
";

echo "
";

echo "Supprimé !!!

";

echo "
";

echo "<FORM name=conn action=supp.php>";

echo '

';

echo "</FORM>";


mysql_close($cnx);


?>





--=Ak=-
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008

bon la connexion ce n'est pas la peine de l'écrire vu qu'il n'y a pas de problème de ce coté la
--=Ak=-
Messages postés
24
Date d'inscription
mercredi 1 décembre 2004
Statut
Membre
Dernière intervention
28 août 2008

ah oké,

merci beaucoup bcp

merci


--=Ak=-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
De rien :-)