Erreur en voulant faire un Update

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Erreur en voulant faire un Update

par fabrice88250 » 07 janv. 2009, 13:49

Argh !!!! la virgule.
Merci, a force de chercher on n'y voit plus rien.

par guilt92 » 07 janv. 2009, 13:46

Bonjour,

Il faut enlever la , apres date="$date" sinon il s'attend à un autre champ...

Tu devrais aussi vérifier l'existence de tes variables, surtout id avant de faire l'update...

Enfin ca ne sert à rien de faire id="$id" car tu update avec un WHERE id="$id" donc la valeur de id restera inchangée, tu peux ne pas updater ce champ :)
$requete = mysql_query('UPDATE infonews SET
            nom = "$nom",    
            url = "$url",   
            news = "$news",   
            date = "$date"   
            WHERE id = '.$id) or die( mysql_error() ) ; 
Attention aussi aux injections SQL si ce contenu est ajoutable par des membres, pense a regarder du coté de la fonction mysql_escape_string() par exemple.

par lacfab » 07 janv. 2009, 13:46

ce que je te conseille c'est déjà d'aller dans phpmyadmin et dans un onglet "SQL" tu tapes ta requete en remplaçant $id par une valeur. Il te dira si tu as une erreur.

Bye

Erreur en voulant faire un Update

par fabrice88250 » 07 janv. 2009, 13:35

bonjour,
j'essai de faire un update des données de ma base mais lorsque je valide mes mises a jour j'ai ce message d'erreur qui apparait.

Code : Tout sélectionner

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE id = "$id"' at line 7
j'ai refait ma page de validation mais j'ai toujours le meme message.

Pourriez vous m'aider ?
ma page de validation est
  //connection au serveur
	include("../connexion-sql.php");

 
  //récupération des valeurs des champs: 

  $nom = $_POST["nom"] ; 
  $url = $_POST["url"] ; 
  $news = $_POST["news"] ; 
  $date = $_POST["date"] ; 
 
   
  //récupération de l'identifiant de la news: 
  $id = $_POST["id"] ; 

  
  //exécution de la requête SQL:
  $requete = mysql_query('UPDATE infonews SET   
            id = "$id",  
            nom = "$nom",   
            url = "$url",  
            news = "$news",  
            date = "$date",  
            WHERE id = "$id" ') or die( mysql_error() ) ;

  //affichage des résultats, pour savoir si la modification a marchée:
  if($requete)
  {
    echo("La modification concernant la news a bien été effectuée") ;
  }
  else
  {
    echo("La modification à échouée") ;
  }
merci