Select count par rapport à une date
bonjour ,
je désire calculer le nombre de personne en ligne , j'ai un champs "time" dans ma db , il obtien une valeur a la connection , et a chaque passage sur n'importe qu'elle page du site ( update ) .
voici comment je procede :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| <?php $req = "SELECT time ".
"FROM utilisateurs ";
$ret = mysql_query ($req) or die (mysql_error ());
$kak = time();
if ( $col = mysql_fetch_array($ret) )
{
$mogon = ($kak-($col['time']));
$hote = 'localhost';
$base = 'x';
$user = 'x';
$pass = 'x';
$cnx = mysql_connect ($hote, $user, $pass) or die (mysql_error ());
$ret = mysql_select_db ($base) or die (mysql_error ());
$retour = mysql_query("SELECT COUNT(*) AS nbre_entrees FROM utilisateurs WHERE time = ($mogon < 600) ") or die(mysql_error());
while ( $donnees = mysql_fetch_array ($retour) ) { echo ($donnees['nbre_entrees']); }
} ?> |
je veux donc qu'il calcule le nombre de ligne dont le temps est inferieur a 600 secondes , ainsi je sais le nombre de personne en "ligne".
je suppose que ma syntaxe est fause , ou bien que l'on peut pas proceder ainsi
il me donne : 86
quand je fais : ($mogon > 600) alors que theoriquement lors de l'essai , seul 1 personne etaient <600 il y a 87 personne sur le site
il me donne : 0
quand je fais : ($mogon < 600) alors que en db il y a bien des valeurs plus petite que 600
il me donne : 86
quand je fais : ($mogon > 999999600 )
il me donne : 0
quand je fais : ($mogon < 999999600 ) alors qu'il y a beaucoup de valeur de de moin que 999999600 en db
que faire?
merci :)