Erreur de syntaxe SQL!?

MrTinkertrain -  
 MrTinkertrain -
Bonsoir,

Une idée de pourquoi ceci:
connection();  
echo "connection reussie";  
$req=mysql_query("UPDATE calendrier WHERE SET nom='$titre', texte='$contenu' WHERE eventdate='$eventdate'")or die("echec de la modification ".mysql_error());


me renvoit ça:
connection reussieechec de la modification 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 SET nom='actuzdzd', texte='Texte d\'actudzd' WHERE eventdate='2000-01-01 0' at line 1

Là je sèche, j'ai essayé de bouger mes guillemets et la syntaxe avec parenthèses rien n'y fait...pareil direct dans le sql de phpMyAdmin

Merci si vous avez une idée.

4 réponses

Cisco_31 Messages postés 141 Statut Membre 16
 
Essaye ça pour voir:
("UPDATE calendrier SET nom=$titre, texte=$contenu WHERE eventdate=$eventdate")
0
MrTinkertrain
 
Merci, c'était mon premier code... retenté j'ai droit à là même.
Je vais redémarrer wamp on sait jamais(j'ai vidé le cache du navigateur entre temps mais bon :s)

Le problème pourrait il venir de ce que ma clause WHERE est sur un champ TIMESTAMP?

edit: wamp redémarrer, c'est pareil(m'en serait douté mais après 8h de php je commence à saturer et essaie les trucs mystique.. comme ccm XD)

edit2: j'ai ça que j'arrive pas à modifier de phpMyAdmin sur mon champ eventdate:
Défaut: CURRENT_TIMESTAMP
Extra: ON UPDATE CURRENT_TIMESTAMP

Plusieurs fois que je j'essaie de l'effacer sans résultat.. je vais revenir au bon vieux sql à la main pour mes tables(grrr).
0
Cisco_31 Messages postés 141 Statut Membre 16
 
Le problème pourrait il venir de ce que ma clause WHERE est sur un champ TIMESTAMP?


possible. change ton where et tu verras bien.
0
graffx Messages postés 7513 Statut Contributeur 1 975
 
je pense que l' erreur est dans ton timestamp, mais on ne sait pas a quoi correspond $eventdate et sous quel format.
0
MrTinkertrain
 
Salut, c'est l'id et en timestamp(YYYY-MM-DD hh mm ss). Quand je teste avec une autre clause WHERE(sur un autre champ) j'ai me même soucis(un seul enregistrement dans la table). Je vais refaire la table et utiliser un INT pour la valeur en timestamp UNIX , ça me paraît plus simple que faire un insert+delete à chaque fois que je veut faire un update.

Thx for the hailpeu
0