Aide requette php/mysql insert into

Résolu
jordan57485 -  
tsunamichups Messages postés 94 Statut Membre -
Bonjour,

je suis en train d'essayer de faire un code permettant de change les données dans une table mysql via un formulaire et je bloque sur la requête car il me dit que la syntaxe et incorrecte et ne trouvant pas l'erreur j'ai besoin de votre aide pour la trouver ;) voici le code

<?
 $sql = 'INSERT INTO `fringue` VALUES ("","'.$_POST['log'].'","","","","","","","","","")  WHERE `id` = "'.$_GET['client_id'].'";';
		$req = Ecrire_BDD($sql);
		while ($bdd = mysql_fetch_assoc($req)) {
		
 ?>


je vous remercie d'avance
Configuration: Windows XP
Firefox 3.0.10

7 réponses

  1. le père
     
    Bonjour

    Quand on a une erreur, il faut TOUJOURS donner le message d'erreur
    0
  2. jordan57485
     
    je l'ai dit l'erreur c'est erreur de syntaxe .. mais obon voici le message :) :

    Erreur SQL !INSERT INTO `fringue` VALUES ("","jordan578","","","","","","","","","") WHERE `id` = "20000007";
    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` = "20000007"' at line 1
    0
  3. le père
     
    Il faut TOUJOURS donner le message quand même, il donne des indications que ne donne pas ton simple 'erreur de syntaxe'. Ce n'est pas parce que tu ne sais pas l'interpréter qu'il est sans intérêt

    Dans ton cas, voici l'erreur : il n'y a pas de WHERE dans une clause INSERT. En effet, le INSERT ajoute une nouvelle ligne, alors que le WHERE indique sur quelles lignes déjà présentes il faut agir. C'est absurde.
    Donc de deux choses l'une : ou bien tu veux vraiment faire un INSERT et tu vires le WHERE, ou bien c'est un UPDATE, et alors il faut ré-écrire ta requête
    0
  4. jordan57485
     
    oui c'est pour changer des données dans une table ais ses données existent deja donc ce sera un update ? peut tu confirmer et par la me donenr la misde en forme stp .

    merci.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. le père
     
    $sql = 'UPDATE `fringue` set `nomduchamp` ="'.$_POST['log'].'" WHERE `id` = "'.$_GET['client_id'].'"';

    ou (c'est la même chose, mais ça me semble plus lisible, question de goûts)
    $sql = "UPDATE `fringue` set `nomduchamp` ='$_POST[log]' WHERE `id` = '$_GET[client_id]'";
    0
  7. jordan57485
     
    merci j'ai réussi a trouver. sympa de votre part

    bonne journée :)
    0
  8. tsunamichups Messages postés 94 Statut Membre 87
     
    met le logo resolut
    0