Aide requette php/mysql insert into

Résolu
jordan57485 -  
tsunamichups Messages postés 87 Date d'inscription   Statut Membre Dernière intervention   -
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
A voir également:

7 réponses

le père
 
Bonjour

Quand on a une erreur, il faut TOUJOURS donner le message d'erreur
0
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
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
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

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

Posez votre question
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
jordan57485
 
merci j'ai réussi a trouver. sympa de votre part

bonne journée :)
0
tsunamichups Messages postés 87 Date d'inscription   Statut Membre Dernière intervention   87
 
met le logo resolut
0