affichage par ladate

Eléphant du PHP | 121 Messages

01 févr. 2010, 23:25

Bonjour à tous,

J'aimerai afficher la prochaine sortie de mon club qui est enregistrée dans une base de donnée.
J'ai fait le code suivant:

Code : Tout sélectionner

$ladatejour= date("Y-m-d"); $select = 'select * FROM agenda where genre="Les Sorties 2010" ORDER BY datedebut >"'.$ladatejour.'" LIMIT 0,1 '; $result2 = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );
j'ai 3 sorties enregistrées avec les dates suivantes:

2010-01-23
2010-03-13
2010-06-19

Ce que je voudrai afficher c'est la sortie du 2010-03-13 vu que c'est la prochaine date ,mais il m'affiche celle du 2010-06-19

Je ne comprends pas et merci d'avance a celui qui pourra m'aider.

ViPHP
ViPHP | 5462 Messages

01 févr. 2010, 23:28

tes champs sont de type varchar ou date ?

Eléphant du PHP | 121 Messages

01 févr. 2010, 23:29

ILs sont au format date

ViPHP
ViPHP | 5462 Messages

01 févr. 2010, 23:36

ton ORDER est un peu ambiguë ca se présente plus comme ca
SELECT * FROM `testdate` WHERE date > NOW() ORDER BY date ASC LIMIT 1
et fait LIKE ou lieu de = pour le genre

Eléphant du PHP | 121 Messages

01 févr. 2010, 23:43

Merci pour ton aide c'est exactement ça
Peux-tu m'expliquer pour que je comprenne ce que c'est :
NOW()

Code : Tout sélectionner

$select = 'SELECT * FROM agenda WHERE datedebut > NOW() ORDER BY datedebut ASC LIMIT 1 '; $result2 = mysql_query($select,$link) or die ('Erreur : '.mysql_error() );


Merci encore

ViPHP
ViPHP | 5462 Messages

01 févr. 2010, 23:50

NOW() c'est un fonction mysql qui te retourne la date d'aujourd hui, donc pas besion de t'embeté avec PHP,
d'ailleur a se sujet MYSQL est beaucoup plus puissant au niveau des dates que PHP

je t'invite a allé faire un tour ici, je pense que beaucoup de chose vont t'interesser :

http://dev.mysql.com/doc/refman/5.0/fr/ ... tions.html