Сравнение дат с PHP и Mysql - PullRequest
0 голосов
/ 15 ноября 2011

У меня есть таблица с типом поля даты date.

Я пытаюсь сделать сравнение между датой внутри таблицы и сегодняшней датой.Если дата из таблицы вчера, то вставьте дату сегодня.

В чем я не уверен, так это в том, как вставить данные в базу данных, чтобы я мог провести сравнение.вот что я собираюсь сделать: "

$d = time();
$x = mysql_querry("SELECT date FROM table where id = $id", $con);
while($y = myqsl_fetch_array($x)){
    $oldTime = $y['date']; 
}

if ($oldTime < $d){
$i = mysql_querry("INSERT INTO table (date) VALUES (CURDATE()) ", $con);
}

Итак, я не уверен, можно ли сравнить $oldTime and $d таким образом, но я надеюсь, что вы, ребята, поняли мою точку зрения.

Любойидеи?

Спасибо

Ответы [ 2 ]

0 голосов
/ 15 ноября 2011

Для сравнения дат вы можете использовать strtotime($date); Где date может быть временем (), mysql date или date ('Ym-d');строка

0 голосов
/ 15 ноября 2011

Вы не можете сделать это таким образом, потому что функция CURDATE () возвращает дату в формате, подобном 2011-11-11, в то время как time () возвращает количество секунд с момента1 января 1970 00:00:00 по Гринвичу.

В любом случае вы можете изменить формат времени (), чтобы он выглядел как CURDATE (), используя функцию date () следующим образом:

date('Y-m-d', time())

или даже лучше, чтобы получить текущую дату, вы можете использовать только эту строку:

date('Y-m-d')

В заключение, вы можете сделать if следующим образом:

if( strtotime($oldTime) < strtotime(date('Y-m-d')) )

или даже лучше:

if( strtotime($oldTime) < strtotime('now') )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...