Okei, tein sivulleni yksinkertaisen viestisyteemin, mutta siinä on pieni ongelma.
Kun lajittelen viestit ajan mukaan laskevaan järjestykseen niin menee näin:
Testi mattim 26.09.09 12:40:05 Delete asdasd vehkis 26.09.09 12:23:57 Delete onkos ville 26.09.09 06:53:12 Delete nojoo testi 26.09.09 06:40:44 Delete testi2 ville 26.09.09 06:39:55 Delete
Kun pitäis olla näin:
onkos ville 26.09.09 06:53:12 Delete nojoo testi 26.09.09 06:40:44 Delete testi2 ville 26.09.09 06:39:55 Delete Testi mattim 26.09.09 12:40:05 Delete asdasd vehkis 26.09.09 12:23:57 Delete
Edit: noi ajat on sitten hieman väärin, ku serveri on jossain amerikoissa...
Ajan haen tallennusvaiheessa NOW() funktiolla ja tietokannassa on timestamp, mihin aika tallentuu.
Toivottavasti joku osaa auttaa tässä...
Käännä algoritmi toisin päin. 8)
Millainen koodi?
Ei toimi kääntäminen, tulee sama homma.
$sql = mysql_query("SELECT messages.from, messages.to, messages.message, messages.id, messages.title, DATE_FORMAT(messages.time,'%d.%m.%y %h:%i:%s') AS time FROM messages WHERE messages.to = '{$nick}' ORDER BY time DESC", $lnk);
Mikä tuossa muka on väärin? Alkuperäisessä viestissäsi järjestys on ensimmäisessä laatikossa oikea ja toisessa väärä, vaikka väität juuri päinvastoin. Vai tarkoittaako 12.xx nyt meikäläistä aikaa 00.xx? Kannattaisi formatoida ajat järkevästi eikä USAlaisittain.
Itse ratkaisu: järjestä viestit aikaleiman mukaan, älä formatoidun ajan. Muuta siis AS time
=> AS time_fmt
.
Kiitokset, nyt toimii. :D
Aihe on jo aika vanha, joten et voi enää vastata siihen.