Erreur de syntaxe sql (URGENT) [Résolu]

Signaler
Messages postés
165
Date d'inscription
jeudi 5 février 2009
Statut
Membre
Dernière intervention
28 novembre 2009
-
Messages postés
64
Date d'inscription
mercredi 20 septembre 2006
Statut
Membre
Dernière intervention
17 juillet 2012
-
bonjour a tous,
je pense avoir une erreur de syntaxe dans cette requete pouvez-vous me dire laquel car je ne le trouve pas

$resultat=mysql_query("SELECT * FROM incidents WHERE date_icdt >= mktime(0,0,0, date("m")-1,01,date("Y"))";

Merci

10 réponses

Messages postés
232
Date d'inscription
jeudi 30 août 2007
Statut
Membre
Dernière intervention
31 juillet 2009

Alors je te donne un petit conseil, lit la doc de mktime, strftime et strtotime ... ça pourrait grandement t'aider.

En ce qui concerne ton problème il faudrait nous dire de quelle forme et ton champ 'date_icdt' du genre s'il est de la forme "2009-02-25" ou "25-02-2009" ou autre ...

Ensuite avec ton $date_temp qui vaut mktime(0,0,0, date("m")-1, 1, date("Y")), tu va devoir le convertir en une string avec ceci :

strftime ('%d-%m-%Y', $date_temp); //Ici tu obtient une date du type "2009-02-25" ... A toi de te documenter pour obtenir le format date qu'il te faut ...

En espèrant avoir été assez clair

++
Messages postés
165
Date d'inscription
jeudi 5 février 2009
Statut
Membre
Dernière intervention
28 novembre 2009

Je viens de trouver ce qui est peu tetre la solution a mon problem la voici

$date_temp = mktime(0,0,0, date("m")-1, 1, date("Y"));
$resultat=mysql_query("SELECT * FROM incidents WHERE date_icdt >='$date_temp'");

mon problem desormais est lorsque je fait un
echo $date_temp;

il maffiche cela "1230764400"
Messages postés
64
Date d'inscription
mercredi 20 septembre 2006
Statut
Membre
Dernière intervention
17 juillet 2012

Je pense ke c'est normal car tu n'as la donnée le format de la date pour qu'il fait la comparaison
Messages postés
165
Date d'inscription
jeudi 5 février 2009
Statut
Membre
Dernière intervention
28 novembre 2009

tu veux dire que je ne lui donne pas le format de mon date_icdt si j'ai bien compris ?
Messages postés
64
Date d'inscription
mercredi 20 septembre 2006
Statut
Membre
Dernière intervention
17 juillet 2012

Wé tu veux k'il fait la comparaison entre deux dates avec des champs soient "-" ou "/"
il faudra bien la doc sur mktime pour voire la conversion
Messages postés
165
Date d'inscription
jeudi 5 février 2009
Statut
Membre
Dernière intervention
28 novembre 2009

Je vous remerci de vos reponse j'ai bien lu la doc concernant mktime mais pas pour strftime, je vais bosser sa pour voir, jvous tiens au courant sur cette page is vous le desirez

merci
Messages postés
64
Date d'inscription
mercredi 20 septembre 2006
Statut
Membre
Dernière intervention
17 juillet 2012

ok moi pas de bleme
Messages postés
165
Date d'inscription
jeudi 5 février 2009
Statut
Membre
Dernière intervention
28 novembre 2009

voici la solution

$date_temp = mktime(0,0,0, date("m")-1, 1, date("Y"));
$date=strftime ('%Y-%m-%d', $date_temp); //Ici j' obtient une date du type "2009-02-25"
$resultat=mysql_query("SELECT * FROM incidents WHERE date_icdt >='$date'");

Et merci a vous deux pour la solution
Messages postés
232
Date d'inscription
jeudi 30 août 2007
Statut
Membre
Dernière intervention
31 juillet 2009

Ravi de t'avoir rendu service ... n'oubli pas "Résolu" sur la réponse qui ta convenue

Merci
Messages postés
64
Date d'inscription
mercredi 20 septembre 2006
Statut
Membre
Dernière intervention
17 juillet 2012

Ravi de t'avoir orienter mais l'honneur revien a mike1310