2011-05-05 5 views
-1

J'ai un script pour les membres et il a 2 tables (users et msgs).Différence entre les dates

Je veux obtenir le meilleur membre pour poster des messages par jour. J'ai utilisé ce code, mais il ne fonctionne pas:

$start = TIMENOW - TIMENOW % 86400; 
$end = $start + 86400; 
$maxposter = mysql_query("SELECT users.name,users.id,count(*) total FROM users AS users,msgs AS msgs WHERE users.id=msgs.userid AND msgs.added_date BETWEEN $start AND $end GROUP BY msgs.userid ORDER BY total DESC LIMIT 1")or die(mysql_error()); 
$maxmsg=mysql_fetch_assoc($maxposter); 
echo $maxmsg[name]; 

La ligne added_date est stocké comme 2011-05-05.

+0

Expliquer comment il est "ne fonctionne pas". –

+0

le added_date toujours comme (05-05-2011) et les varuables $ start & $ end sont compris entre 0 et 86400; –

Répondre

1

au lieu que, essayez

SELECT DATE_ADD('2011-05-05', INTERVAL 1 DAY); 

Reference

+0

voir aussi 'DATE_ADD (date, INTERVAL expr unité)' et 'DATE_SUB (date, INTERVAL expr unité)' – diEcho

+0

comment mettre le code dans mon code –

+1

développer la logique :) – diEcho