Prob de Date - PHP - Programmation
Marsh Posté le 09-12-2002 à 13:54:30
tu fait appel à une base MySQL ??
si oui, dans quel format est ton champ date ??
Marsh Posté le 09-12-2002 à 15:23:00
xkamui a écrit : tu fait appel à une base MySQL ?? |
oui Mysql
datetime - 0000-00-00 00:00:00
dans la requete, elle est traité comme ceci :
DATE_FORMAT(t2.date, '%d/%m/%Y' AS date_formattee
Marsh Posté le 09-12-2002 à 16:36:11
Donc rajoute un "order by t2.date DESC" à ta requête
Marsh Posté le 09-12-2002 à 20:12:48
arf javais fais ORDER BY date_formattee au lieu de t2.date jsavais pas que ca changeais kke chose
merci
Marsh Posté le 09-12-2002 à 21:33:58
T'as compris au moins pourquoi c'est pas pareil ?
Marsh Posté le 09-12-2002 à 23:26:28
ReplyMarsh Posté le 09-12-2002 à 23:39:08
La date formatée, c'est une chaîne de caractère. Donc quand il fait un tri dessus, le tri est fait comme dans un dico :
a < b < c....y < z !
Sauf que c'est l'ordre l'ascii et pas juste l'alphabet, et qu'il y a donc en plus les chiffres, et tous les symboles.
En plus c'est triée caractère par caractère en commençant par la gauche comme dans le dico précédement mentionné !
Donc en ordre descendant, tu as bien :
"27/11/2002" > "07/12/2002" > "06/12/2002"
BICOZE "2" > "0" !
Pour trier sur une date "écrite" sous forme d'une chaîne, il faut l'écrire dans le format AAAAMMJJ (ou à la rigueur AAAA/MM/JJ) ce qui donne :
"20021207" > "20021206" > "20021127"
Ou bien tu demande à trier sur un champs de type DATE (t2.date), et alors il fait le tri sur la VALEUR et non pas sur une représentation sous forme de chaîne.
Même problème avec les nombres :
1 < 2 < 5 < 12 < 25
Mais si je l'écrit en chaîne, j'ai :
"1" < "12" < "2" < "25" < "5"
OK ?
Marsh Posté le 10-12-2002 à 08:48:04
papa de Mara > tes filles en ont de la chance d'avoir un père si intelligent et qui explique si bien les choses
Marsh Posté le 08-12-2002 à 13:29:50
je voudrai qu'il puisse trier par mois et non pas par jour...
voila ce que ca fait :
le 27/11/2002
- blabla
le 07/12/2002
- blabla
le 06/12/2002
- blabla
et il faudrait que ca fasse :
le 07/12/2002
- blabla
le 06/12/2002
- blabla
le 27/11/2002
- blabla
Message édité par ludo2604 le 08-12-2002 à 13:30:29
---------------
Make Portraits, Not War!