Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/09/2011, 01h43   #1
Invité de passage
 
Inscription : octobre 2006
Messages : 6
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : octobre 2006
Messages : 6
Points : 1
Points : 1
Par défaut Requete qui fonction sous PhpMyAdmin mais pas avec PHP

Bonjour,

Suite à un plantage du serveur pendant un emailing, j'ai modifié ma requete pour reprendre l'emailing à partir du membre où il s'était arrêté pour ne pas renvoyer un mail à ceux qui l'avaient reçu.
La modif apparait en gras :

Code :
$requete = "select nom,prenom,email,id_membre from $usr_tbl where ((verif_email=2 and validation=1 and OK_emailing=1) and ($add) and (id_membre>7751)) order by id_membre";
Depuis, cela ne fonctionne plus...
j'ai l'erreur suivante :

Citation:
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 ';=7751)) order by id_membre' at line 1
évidemment, le mailing est urgent. j'y ai passé des heures sans comprendre d'où vient l'erreur.
Merci d'avance..
lorentdups est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 09h17   #2
Membre chevronné
 
Inscription : juillet 2003
Messages : 625
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 625
Points : 600
Points : 600
Bonjour,

te renvoie quoi ?
__________________
Le savoir est utile que s'il est partagé par tous.
/(bb|[^b]{2})/
!sleep() ? array((string))
syl2095 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 14h56   #3
Modérateur
 
Avatar de Benjamin Delespierre
 
Benjamin Delespierre
Développeur Web
Inscription : février 2010
Messages : 2 991
Détails du profil
Informations personnelles :
Nom : Benjamin Delespierre
Âge : 24
Localisation : France

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : février 2010
Messages : 2 991
Points : 5 032
Points : 5 032
C'est marrant l'erreur correspond pas à la requête SQL, pourquoi le > s'est miraculeusement transformé en ;= ??
__________________
A la recherche d'un framework MVC facile a prendre en main ? Essayez Axiom
Nouveau: la référence d'Axiom est disponible sur GitHub (je la peaufine en ce moment même).

Un problème correctement identifié est à moitié résolu, évitez de poster l'intégralité de votre code avec pour seule explication "ça ne marche pas...".
Pour identifier correctement vos problèmes PHP, utilisez la gestion des erreurs et xdebug.

Les boutons et existent, servez-vous en
Benjamin Delespierre est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 20h25   #4
Membre régulier
 
Inscription : juillet 2004
Messages : 92
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 92
Points : 75
Points : 75
Comme le précise benjamin d'où vient ce ";=" sachant qu'un point virgule ";" dans une requête SQL représente la fin d'écriture d'une requête, donc le reste '=...' ne sera pas interprété dans mysql.

Vérifie que la requête en question est bien celle qui génère l'erreur dans un premier temps.
headmax est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 23h59   #5
Invité de passage
 
Inscription : octobre 2006
Messages : 6
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : octobre 2006
Messages : 6
Points : 1
Points : 1
Citation:
Envoyé par Benjamin Delespierre Voir le message
C'est marrant l'erreur correspond pas à la requête SQL, pourquoi le > s'est miraculeusement transformé en ;= ??
oops !
en effet, entre temps j'ai testé de remplacer le ">" par un "=".
mais le résultat était le même.

echo $requete donne :

select nom,prenom,email,id_membre from membres where ((verif_email=2 and validation=1 and OK_emailing=1) and (type=1 or type=2 or type=3) and (id_membre>7751) ) order by id_membre
lorentdups est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 09h41   #6
Membre chevronné
 
Inscription : juillet 2003
Messages : 625
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 625
Points : 600
Points : 600
et

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
SELECT nom, 
       prenom, 
       email, 
       id_membre 
FROM   membres 
WHERE  ( ( verif_email = 2 
           AND validation = 1 
           AND ok_emailing = 1 ) 
         AND ( TYPE = 1 
                OR TYPE = 2 
                OR TYPE = 3 ) 
         AND ( id_membre > 7751 ) ) 
ORDER  BY id_membre
te renvoie une erreur dans phpmyadmin ?

Il ne semble pas y avoir d'erreur syntaxique... es tu sûr que les noms des champs correspondent bien ?
__________________
Le savoir est utile que s'il est partagé par tous.
/(bb|[^b]{2})/
!sleep() ? array((string))
syl2095 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 20h01   #7
Invité de passage
 
Inscription : octobre 2006
Messages : 6
Détails du profil
Informations personnelles :
Âge : 35

Informations forums :
Inscription : octobre 2006
Messages : 6
Points : 1
Points : 1
Citation:
Envoyé par syl2095 Voir le message

te renvoie une erreur dans phpmyadmin ?

Il ne semble pas y avoir d'erreur syntaxique... es tu sûr que les noms des champs correspondent bien ?
c'est le problème : aucune erreur sous PhpMyAdmin : la requete fonctionne très bien.
lorentdups est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/09/2011, 20h35   #8
Membre confirmé
 
Inscription : juillet 2011
Messages : 146
Détails du profil
Informations personnelles :
Localisation : France

Informations forums :
Inscription : juillet 2011
Messages : 146
Points : 253
Points : 253
Et donc quel est le message d'erreur final quand y a pas le ;= en trop ?

Car sinon on avancera pas
Tolriq est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h32.


 
 
 
 
Partenaires

Hébergement Web