Pb avec UPDATE

Résolu
elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007 - 12 mars 2006 à 22:42
elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007 - 13 mars 2006 à 14:52
Bonjour,

j'ai un probleme dans un formulaire avec la commande UPDATE qui ne met pas à jour mes données !!!

$question = "select * from Proverbe where id='$id' and membre='$login'";
$reponse = mysql_query($question) or die("La requête "$question" n'a pas pu s'exécuter !");
$val = mysql_fetch_array($reponse);
$resultat_1 = $val['auteur'];
$resultat_2 = $val['proverbe'];
$resultat_4 = $val['id'];
$resultat_5 = $val['membre'];
$resultat_6 = $val['date'];

mysql_query("UPDATE Proverbe SET auteur='$auteur' WHERE id='$resultat_4");

voilà mon probleme, le $id vient en fait d'une autre page, il me donne un numero unique, c'est en fait le numero du proverbe a modifier,je recupere donc le proverbe dans un formulaire (j'ai pas detaillé ici.), je le modifie mais quand je valide il ne met pas la table a jour !!!?

par contre si je met :
mysql_query("UPDATE Proverbe SET auteur='$auteur' WHERE id='230");

là ca fonctionne bien, il modifie bien ma table qui contient l'id 230, mais en fait ici $id=230 donc je ne vois pas pourquoi ca ne marche pas en mettant id='$id'

Sauriez vous pourquoi ?
Si il vous faut plus de detail n'hesiter pas car la je galere depuis 2 jours, merci

6 réponses

elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007
13 mars 2006 à 14:52
Merci pour votre interêt à ma question...

mais cela fonctionne maintenant..

mon code (pas entier evidemment !):

if(!$base)
{ echo"impossible de se connecter à la base"; }


if ($proverbe<>"" and $auteur<>"" ) // verifie que tous les champs sont complétés
{
echo"



Votre message à bien été posté
, un email est envoy&eacute; au webmaster

vous allez être redirigé sur la page d'accueil

merci pour votre participation.

";echo stripslashes($_SESSION['login']);
[mailto:$destinataire='stone@intoxmatique.com' $destinataire='stone@intoxmatique.com'];
$sujet='Citation';
$reponse.=$_SESSION['login'];
$reponse.=" à modifié un proverbe dans la categorie : ";
$reponse.=$_POST[categorie];
$reponse.="\n\nCe proverbe est : \n\n";
$reponse.=$_POST[proverbe];
mail ($destinataire,$sujet,$reponse);


$login=$_SESSION['login'];
$req1=mysql_fetch_array(mysql_query("select email from log where login="$login""), MYSQL_BOTH);//on récupère l'email correspondant au pseudo
$email=$req1['email'];
$destinataire=$email;
$sujet='Votre citation à bien été posté';
$message.="\n\nToute l équipe du site http://www.intoxmatique.com vous remercie pour votre participation\nVoici le proverbe que vous avez modifié :\n\n";
$message.=$_POST[proverbe];
$message.="\n\ndans la categorie : ";
$message.=$_POST[categorie];
$message.="\n\nContact : [mailto:webmaster@intoxmatique.com webmaster@intoxmatique.com]";
mail ($destinataire,$sujet,$message);


mysql_query("UPDATE Proverbe SET auteur='$auteur',proverbe='$proverbe',categorie='$categorie' , membre='$login' WHERE id='$id'")
or die ("impossible d'inserer le proverbe");
mysql_close();
}


else


echo"

veuillez remplir tous les champs, merci...

un email sera envoyé au webmestre pour lui indiquer l'arrivée d'un nouveau proverbe";
?>

tout ca ne fonctionnais pas tant que je n'avais pas rajouter ce champs caché à mon formulaire de ma page precedente :

echo"";

ça lui permet d'envoyer l'id avec le reste du formulaire, je peux donc ensuite le recuperer.

Merci à tous
3
elidris Messages postés 125 Date d'inscription lundi 15 août 2005 Statut Membre Dernière intervention 9 octobre 2007
12 mars 2006 à 23:27
ah ba en fait j'ai trouvé, il fallais que j'insere un champs caché:

echo"";
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
12 mars 2006 à 23:49
Salut,

$id, $login, et $auteur ne sont pas deffinis... tu as global_register à on ?



si oui, alors met le à off, et utilise $_POST...

In a dream, I saw me, drop dead... U was there, U cried... It was just a dream, if I die, U won't cry, maybe, U'll be happy

Mon site (articles sur la programmation et programmes)
0
yergo Messages postés 135 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 18 avril 2006
13 mars 2006 à 13:50
salut,
essai d'afficher les variables que tu recupères de l'autre page avec un simple echo pour savoir si ca vient vraiment de la ..
sinon corrige ta requète t'as oublié un ' :
mysql_query("UPDATE Proverbe SET auteur='$auteur' WHERE id='$id'");
on sait jamais ..
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
13 mars 2006 à 14:03
pas de ' ' si id est un champ de type INT !
0
yergo Messages postés 135 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 18 avril 2006
13 mars 2006 à 14:09
ah oui il a dit 230 tout a l'heure
j'ai pas fait attention
0
Rejoignez-nous