2014-09-23 4 views
1

У меня есть поиск и большинство ответов, и я все еще не могу работать с моим кодом. Мне нужна помощь, чтобы не знать, где это неправильно. Я вставляю Timeon с $date = current_time('mysql');Получить данные mysql старше 5 минут php

My sql table online 

ID int(11)   
onlineppl varchar(255)  
timeon datetime  

data: 
ID onlineppl timeon 
18 1   2014-09-23 12:49:57 
17 3   2014-09-23 12:45:00 
16 12   2014-09-23 12:44:56 

$result = mysql_query("SELECT * FROM online WHERE timeon < DATE_SUB(NOW(),INTERVAL 5 MINUTE)"); 
$row = mysql_fetch_array($result); 


echo $row['onlineppl']; 

я не получаю результат ... Нужна помощь спасибо.

+0

плз попробовать ур запрос в MySQL и проверьте, есть ли ошибка синтаксиса – Salini

+0

ошибка синтаксиса, я проверил. – urber

+0

попробуйте с выбором * без условия. затем проверьте, не работает ли его работа без условия – Salini

ответ

1

Измените свой запрос на

SELECT * FROM online WHERE timeon < (NOW() - INTERVAL 5 MINUTE); 
+0

Извините, нет результата, это из-за current_time ('mysql'), который я вставляю в timeon? Подобно часовому поясу, потому что я установил Wordpress. – urber

+0

@ urber..Как вы экономили время? Как timestamp (datetime) или временная метка unix (integer)? – Jenz

+0

$ date = current_time ('mysql'); $ wpdb-> query ($ wpdb-> prepare ("INSERT INTO online (onlineppl, timeon) VALUES (% s,% s)", $ onlineid, $ date)); – urber

0

не менее использовать больше чем

SELECT * FROM online WHERE timeon > (NOW() - INTERVAL 5 MINUTE); 

это работает использование (> =)

+0

время больше (>) требуется знак –

Смежные вопросы