Заявка не отчита правилно

dakata__92

Super Moderator
Имам ето тази заявка и желая при сметката вътре да вади определен брой абонати които са на линия, но нещо не ми съвпадат работите 900 секунди са 15 минутки. $last_activity се записва във формат като $now . Разминаването е голямо като се има предвид, че с тази заявка вадя всички абонати които са онлайн :(

$now = date('Y-m-d H:i:s');
$select1 = mysql_query("SELECT * FROM users WHERE (TIMESTAMP('$now') - TIMESTAMP(last_activity)) <= '900' AND status = '1'")or die(mysql_error());
while($row = mysql_fetch_array($select1))
{
$id = $row['id'];
$user = $row["user"];
$last_activity = $row["last_activity"];
echo "<br><font color='green'>$user</font>";
}


Някаде на 550 - 600 -ната секунда премахва абоната като сравнявам по този код :

PHP:
$lastactiv = abs(strtotime($now) - strtotime($last_activity));
echo "($now) - ($last_activity) = $lastactiv  ";
 
направи заявката така:
PHP:
$select1 = mysql_query("SELECT * FROM users WHERE TIMESTAMP(last_activity) >= '".(time()-900)."' AND status = '1'")or die(mysql_error());
[/quote]
 
Не се получава правилно !
Разликата трябва да е по-малка или равна на 900 .
(TIMESTAMP('$now') - TIMESTAMP(last_activity)) <= '900'

Написаното от теб е така по логика но не ми вади абонатите които са он като хората ! С моя код е правилно но има разминаване пък във времетраенето :(
 
Защото проблема ти е другаде, а не в заявката, моято заявка която ти дадох работи :)
 
MontefuckeR каза:
Защото проблема ти е другаде, а не в заявката, моято заявка която ти дадох работи :)
Самите заявки работят но не отчитат правилно времетраенето като сметки ! Реших си проблема по старомодния начин с if{}else{} !
 

Горе