Probleme SQL
Résolu/Fermé
powpowland
Messages postés
395
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
2 mars 2022
-
18 févr. 2009 à 16:32
powpowland Messages postés 395 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 mars 2022 - 19 févr. 2009 à 17:00
powpowland Messages postés 395 Date d'inscription lundi 3 mars 2008 Statut Membre Dernière intervention 2 mars 2022 - 19 févr. 2009 à 17:00
A voir également:
- Probleme SQL
- Récupération serveur sql - Télécharger - Gestion de données
- Sql query - Télécharger - Gestion de données
- Sql replace plusieurs valeurs - Forum Programmation
- Delete cascade sql - Forum Programmation
- Sql pix - Forum Python
3 réponses
Archeus01
Messages postés
1567
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
447
18 févr. 2009 à 16:43
18 févr. 2009 à 16:43
moi c'est localhost qui me choque.
Pour savoir si c'est ta requète :
extrait de php.net
$result = mysql_query('SELECT * WHERE 1=1');
if (!$result) {
die('Requête invalide : ' . mysql_error());
}
donc pour toi :
if (!$qpro) {
die('Requête invalide : ' . mysql_error());
}
while ($rpro = mysql_fetch_array($qpro)){
Pour savoir si c'est ta requète :
extrait de php.net
$result = mysql_query('SELECT * WHERE 1=1');
if (!$result) {
die('Requête invalide : ' . mysql_error());
}
donc pour toi :
if (!$qpro) {
die('Requête invalide : ' . mysql_error());
}
while ($rpro = mysql_fetch_array($qpro)){
powpowland
Messages postés
395
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
2 mars 2022
20
18 févr. 2009 à 17:12
18 févr. 2009 à 17:12
tu sais si tu veux je te donne l'adresse de ma BD et mes mots de passes...
soyons sérieux... ça m'aide pas beaucoup...
ça me marque ça si je suis ton conseil : "Requête invalide : 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 'SELECT event_date FROM ltw_eventsv4 WHERE event_date >= TODAY()"
et je reprécise, ça marche très bien sur EasyPHP...
c'est quoi le problème!!!!!!!!!!
soyons sérieux... ça m'aide pas beaucoup...
ça me marque ça si je suis ton conseil : "Requête invalide : 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 'SELECT event_date FROM ltw_eventsv4 WHERE event_date >= TODAY()"
et je reprécise, ça marche très bien sur EasyPHP...
c'est quoi le problème!!!!!!!!!!
Archeus01
Messages postés
1567
Date d'inscription
mercredi 3 octobre 2007
Statut
Membre
Dernière intervention
9 juin 2022
447
19 févr. 2009 à 11:32
19 févr. 2009 à 11:32
Si, c'est utile. Il faut localiser l'erreur avant de pouvoir la corriger...
Tu balances une page de code alors que seul ces deux lignes plantent :
mysql_query("SELECT name,event_date, location FROM ltw_eventsv4 WHERE event_date = (SELECT event_date FROM ltw_eventsv4 WHERE event_date >= CURRENT_DATE() LIMIT 1) ORDER BY event_date");
1) je conseille de faire un truc du genre :
$query = "SELECT name,event_date, location FROM ltw_eventsv4 WHERE event_date = (SELECT event_date FROM ltw_eventsv4 WHERE event_date >= CURRENT_DATE() LIMIT 1) ORDER BY event_date";
mysql_query($query);
2) je conseille de faire un echo $query sur easy php et sur ton fournisseur pour voir s'il y a une différence.Normalement non.
3)Dans ce cas, ça vient pas du php mais du serveur SQL. Pour t'en convaincre, tu n'as qu'a tester directement via l'interface de gestion de tes serveurs sql ta requête récupérer grâce au echo .
En effet, la fonction today et current_date en SQL ne sont pas acceptées par tous les serveur sql (cf https://sqlpro.developpez.com/cours/sqlaz/fonctions/ Il faudrait la remplacer par du code php...
Donc il te faudrait supprimer le today de ta requête sql par autre chose si ma théorie est juste. Et les tests conseillés diront si ma théorie est juste ou pas.
Tu balances une page de code alors que seul ces deux lignes plantent :
mysql_query("SELECT name,event_date, location FROM ltw_eventsv4 WHERE event_date = (SELECT event_date FROM ltw_eventsv4 WHERE event_date >= CURRENT_DATE() LIMIT 1) ORDER BY event_date");
1) je conseille de faire un truc du genre :
$query = "SELECT name,event_date, location FROM ltw_eventsv4 WHERE event_date = (SELECT event_date FROM ltw_eventsv4 WHERE event_date >= CURRENT_DATE() LIMIT 1) ORDER BY event_date";
mysql_query($query);
2) je conseille de faire un echo $query sur easy php et sur ton fournisseur pour voir s'il y a une différence.Normalement non.
3)Dans ce cas, ça vient pas du php mais du serveur SQL. Pour t'en convaincre, tu n'as qu'a tester directement via l'interface de gestion de tes serveurs sql ta requête récupérer grâce au echo .
En effet, la fonction today et current_date en SQL ne sont pas acceptées par tous les serveur sql (cf https://sqlpro.developpez.com/cours/sqlaz/fonctions/ Il faudrait la remplacer par du code php...
Donc il te faudrait supprimer le today de ta requête sql par autre chose si ma théorie est juste. Et les tests conseillés diront si ma théorie est juste ou pas.
powpowland
Messages postés
395
Date d'inscription
lundi 3 mars 2008
Statut
Membre
Dernière intervention
2 mars 2022
20
19 févr. 2009 à 17:00
19 févr. 2009 à 17:00
c'est bon h'ai trouvé un truc...
on remplace l'ancienne requete par celle-ci...
SELECT name,event_date, location FROM ltw_eventsv4 WHERE event_date >= \"$currentdate\" LIMIT 0,1
c'est soit le ORDER BY et la syntaxe de LIMIT, il manqué une valeur...
merci à toi d'avoir essayé de m'aider...
on remplace l'ancienne requete par celle-ci...
SELECT name,event_date, location FROM ltw_eventsv4 WHERE event_date >= \"$currentdate\" LIMIT 0,1
c'est soit le ORDER BY et la syntaxe de LIMIT, il manqué une valeur...
merci à toi d'avoir essayé de m'aider...