1064 erroe

Invité2
Invité n'ayant pas de compte PHPfrance

01 sept. 2008, 16:19

Bonjour,

Cette requête me retourne une erreur 1064, quelqu'un y voit une erreur ...

Code : Tout sélectionner

$request = 'UPDATE horaire SET heure_11=\''.$heure1.'\', heure_12=\''.$heure2.'\', heure_21=\''.$heure3.'\', heure_22=\''.$heure4.'\', heure_31=\''.$heure5.'\', heure_32=\''.$heure6.'\', heure_41=\''.$heure7.'\', heure_42=\''.$heure8.'\', precision1=\''.$precision1.'\', precision2=\''.$precision2.'\', precision3=\''.$precision3.'\', precision4= \''.$precision4.'\' WHERE horaire_id='.$id.'\' AND jour='.$jour;
Merci

Modérateur PHPfrance
Modérateur PHPfrance | 2575 Messages

01 sept. 2008, 16:50

Une apostrophe et un anti-slash de plus qui trainent dans : WHERE horaire_id='.$id.'\' AND jour='.$jour;
--------//////----//---//----//////
-------//---//----//---//----//---//
------//////----//////-----//////
-----||--------||--||---||
Prendre le recul n'est pas une perte de temps.


ps: Affrontez moi dans l'arène

Eléphant du PHP | 174 Messages

01 sept. 2008, 16:53

est ce que ça ne viendrait pas de ton :

Code : Tout sélectionner

WHERE horaire_id='.$id.'\'
seule partie du code où tu n'as pas placé deux '/' ?

c'est une suposition parce que je n'utilise pas de / dans mes synthaxes, sinon j'aurais plutôt écrit

Code : Tout sélectionner

'/'.$element.'/'
plutôt que

Code : Tout sélectionner

/''.$element.'/'
(écriture plus symétrique) mais comme je l'ai déjà dit, je n'utilise pas cette écriture...
"Il vaut mieux avoir du luxe dans ses sentiments que sur ses habits, je ne crains, moi, le mépris de personne" Honoré De Balzac.
"On s'étonne trop de ce que l'on voit rarement et trop peu de ce que l'on voit chaque jour" Mme de Genlis
"L'absence diminue les médiocres passions et augmente les grandes comme le vent éteint les bougies et allume le feu" La RocheFoucauld
"People have hope because they can't see Death standing behind them" (anonymous)
"Of all the things I've lost, I miss my brain the most" (from a fanfic)

Eléphant du PHP | 422 Messages

01 sept. 2008, 17:37

ce qu'il y a de vachement bien avec PHP, c'est qu'on peut encadrer les chaînes avec des " ou des ' . Et du coup, on peut choisir la syntaxe qui est la plus lisible en fonction de l'intérieur de la chaîne, et qui du coup, est la plus facile à debugger.
$request = "UPDATE horaire SET heure_11='$heure1', ..."
//ou
$request = "UPDATE horaire SET heure_11='".$heure1."', ..."

Invité2
Invité n'ayant pas de compte PHPfrance

02 sept. 2008, 09:54

Bonjour,

Bon petit résumé, j'avais cette erreur : 1064 connexion errorYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' AND jour=lundi' at line 1

J'ai essayé ça :

Code : Tout sélectionner

$request = 'UPDATE horaire SET heure_11=\''.$heure1.'\', heure_12=\''.$heure2.'\', heure_21=\''.$heure3.'\', heure_22=\''.$heure4.'\', heure_31=\''.$heure5.'\', heure_32=\''.$heure6.'\', heure_41=\''.$heure7.'\', heure_42=\''.$heure8.'\', precision1=\''.$precision1.'\', precision2=\''.$precision2.'\', precision3=\''.$precision3.'\', precision4= \''.$precision4.'\' WHERE horaire_id='.$id.' AND jour='.$jour;
Et j'ai encore une erreur de même type : 1064 connexion errorYou have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AND jour=lundi' at line 1

J'ai essayé d'autres solutions mais en vain ... je ne comprends pas ....

Merci

Eléphant du PHP | 174 Messages

02 sept. 2008, 17:13

caroube t'a mis sur la piste pourtant.

ta requete doit s'écrire sous un format :

Code : Tout sélectionner

$requete = "donnee = ' ".$variable." ' ";
avec une alternance de guillemets simples et double.

toi tu n'en mets qu'un dans

Code : Tout sélectionner

AND jour='.$jour;
ton ' referme la requête, le reste est donc incorrect.

réécrits ta requête avec le modèle présenté et elle fonctionnera...
"Il vaut mieux avoir du luxe dans ses sentiments que sur ses habits, je ne crains, moi, le mépris de personne" Honoré De Balzac.
"On s'étonne trop de ce que l'on voit rarement et trop peu de ce que l'on voit chaque jour" Mme de Genlis
"L'absence diminue les médiocres passions et augmente les grandes comme le vent éteint les bougies et allume le feu" La RocheFoucauld
"People have hope because they can't see Death standing behind them" (anonymous)
"Of all the things I've lost, I miss my brain the most" (from a fanfic)