cs_steppenwolf
Messages postés84Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention29 décembre 2006
-
29 déc. 2006 à 15:45
cs_steppenwolf
Messages postés84Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention29 décembre 2006
-
29 déc. 2006 à 16:58
Salut !
J'ai un petit souci de requête SQL et en particulier avec la requête UPDATE.
Je cherche à mettre un jour un enregistrement dans une table (news) dont voici la strucure :
id (type INT)
date (type DATE)
corps (type TEXT)
et voici le code php :
include('../config/conf.php'); //ça c'est pour la connexion à la BDD
$corps = $_POST['corps'];
$query = mysql_query("UPDATE news SET corps="$corps" WHERE id=".$_GET['id']."");
Alors, ça ne marche pas du tout et je crois savoir d'ou vient le problème : id=".$_GET['id']." ! Comme id est de type INT, à mon avis, il manque qqch (genre des cotes ou des guillemets) mais j'ai essayé pas mal de trucs et ça ne fonctionne toujours pas !
Si qqun pouvait m'aider ce serait vraiment cool !
Merci
P.S. : voici comment je fais le lien entre le formulaire ou je peux modifier la news en question et le script php ou la MAJ est faite (si ça peut aider) :
<form method ="post" action="updatenews2.php?id=<? print($_GET['id']); ?>&admin=<? print($_GET['admin']); ?>&id_session=<? print($_GET['id_session']); ?>">
--------
Alex
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 29 déc. 2006 à 16:15
Hello,
$_GET['id'] est vide à mon avis.
Fais un echo de ta requête, tu verras bien où est le problème.
Tu ne devrais pas faire autant confiance aux données utilisateurs...ça se teste et se vérifie, ce genre de données.
cs_steppenwolf
Messages postés84Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention29 décembre 2006 29 déc. 2006 à 16:58
Ca marche ! Merci beaucoup !
La syntaxe correcte c'est donc : ("UPDATE news SET corps="$corps" WHERE id=".$_GET['id']);
En fait, j'ai fait ce que tu m'as dit (die(mysql_error())) et ça m'a indiqué une erreur de syntaxe qui en fait venait de ce que contenait la variable corps (dedans, yavait des guillemets car le texte associé à la news contient une balise etc! Et ça passait pas donc j'ai simplement ajouté le caractère \ devant les guillemets dans le formulaire.).
En tout cas, merci d'avoir pris le temps de d'intéresser à mon pb !
------------
Alex