Дата и время.

Set

Новичок
Дата и время.

Приветствую всех!
Господа, могли бы Вы подсказать как вычислить время(в часах) между двумя датами вида 2004-07-30-17:30:00?
Заранее спасибо.
 

alpine

Новичок
Можно вопрос?
Откуда берется эта дата?

-~{}~ 30.07.04 16:57:

И еще точно она в таком формате: " 2004-07-30-17:30:00"?
Может она в таком у тебя: "2004-07-30 17:30:00"?
 

Set

Новичок
Время берется из MySql.
Действительно, 2004-07-30 17:30:00 :rolleyes:
 

alpine

Новичок
Set
Дай запрос к базе посмотреть, как ты его достаешь?

-~{}~ 30.07.04 17:20:

Еще вопрос что ты планируешь с вычисленным временем делать? Для чего ты его используешь?
 

Set

Новичок
2 alpine
1. Запрос я делаю такой:
select pdate where login='$login'
pdate сравниваю с тек. датой...
2. Если время равно какой-то величине, выдать сообщение
 

Set

Новичок
2 Diesel
Подскажи, пожалуйста, как ей пользоваться, а то у меня че-то не получается.
 

_RVK_

Новичок
Set в мане ведь все написано! она возвращает количество секунд начиная с 1.01.1970. Вот и вычисляй разницу, а потом дели на 3600(кол секунд в часе).
 

alpine

Новичок
Предлогаю такой приметр
Делается запрос и проверяется истекло ли время пользователя
PHP:
$expire = 3600; // в секундах

$sql = 'SELECT login FROM table WHERE login=\'' . $login . '\' AND UNIX_TIMESTAMP() - UNIX_TIMESTAMP(pdate) > ' . $expire;
$result = mysql_query($sql);

if (mysql_num_rows($result)) {
    echo 'Error ...';
    exit;
} else {
   // твой код
}
 

Set

Новичок
Ура заработало:)
Всем большое спасибо.

2 alpine
Спасибо, но через strtotime удобнее.
 

lucas

Guest
Думаю, рассказывать о существовании в MySQL функции NOW, а, следовательно, ненужности UNIX_TIMESTAMP'а, смысла нет абсолютно никакого...
 

alpine

Новичок
lucas
А может есть? Мне интересно ...

-~{}~ 31.07.04 20:38:

А в чем будет результат если отнять от NOW() - pdate?
 
Сверху