PHP/MySQL | Последнее обновление страницы
Код:
$lastupdate = $pdo->prepare('UPDATE users SET lu = ' . time() . ' WHERE id = ?');
$lu = $lastupdate->execute([$user['id']]);
Колонка lu:
Ошибок никаких не отображает, просто время стоит по нулям и не меняется помогите:
------
48408_IMG_20170807_022400_356.png (65.7 Kb)
Скачиваний: 59
$lastupdate = $pdo->prepare('UPDATE users SET lu = ' . time() . ' WHERE id = ?');
$lu = $lastupdate->execute([$user['id']]);
Колонка lu:
Тип: timestamp
Null: not null
По умолчанию: default '0000-00-00 00:00:00'
Extra: on update CURRENT_TIMESTAMP
Null: not null
По умолчанию: default '0000-00-00 00:00:00'
Extra: on update CURRENT_TIMESTAMP
Ошибок никаких не отображает, просто время стоит по нулям и не меняется помогите:
------

Скачиваний: 59
Потому что time() отдает время не такое, какое требует поле времени в SQL. Используй обычный int на 11 символов.
Если хочешь время в формате 2017-08-07 00:00:00, то запрашивай так date("Y-m-d H:i:s")
________
посл. ред. 07.08.2017 в 02:39; всего 1 раз(а); by TJerry
Если хочешь время в формате 2017-08-07 00:00:00, то запрашивай так date("Y-m-d H:i:s")
________
посл. ред. 07.08.2017 в 02:39; всего 1 раз(а); by TJerry
В до гонку, когда создаешь массив, пиши через array(); а не в квадратных скобках, в них пустой массив создают, можешь столкнутся с проблемами на некоторых хостингах, с чем это связано, без понятия, но запрос бывает не работает.
Пример:
Пример:
$lastupdate = $pdo->prepare('UPDATE `users` SET `lu` = ? WHERE `id` = ?');
$lu = $lastupdate->execute(array(time(),$user['id']));
$lu = $lastupdate->execute(array(time(),$user['id']));
Если я запишу time() в int, как мне можно потом перевести unix в читабельный вид?

DELETED
7 августа 2017, в 7:48
Delete
TuT (07.08.2017 в 03:00)
В до гонку, когда создаешь массив, пиши через array(); а не в квадратных скобках, в них пустой массив создают, можешь столкнутся с проблемами на некоторых хостингах, с чем это связано, без понятия, но запрос бывает не работает.
Пример:
$lastupdate = $pdo->prepare('UPDATE `users` SET `lu` = ? WHERE `id` = ?');
$lu = $lastupdate->execute(array(time(),$user['id']));
В до гонку, когда создаешь массив, пиши через array(); а не в квадратных скобках, в них пустой массив создают, можешь столкнутся с проблемами на некоторых хостингах, с чем это связано, без понятия, но запрос бывает не работает.
Пример:
$lastupdate = $pdo->prepare('UPDATE `users` SET `lu` = ? WHERE `id` = ?');
$lu = $lastupdate->execute(array(time(),$user['id']));
Это связано с тем, что сокращённая запись массива в квадратные скобки доступна только в PHP версии 5.4 и выше.

DELETED
7 августа 2017, в 7:59
Delete
По умолчанию - CURRENT_TIMESTAMP.
Gazro (07.08.2017 в 03:22)
Если я запишу time() в int, как мне можно потом перевести unix в читабельный вид?
Если я запишу time() в int, как мне можно потом перевести unix в читабельный вид?
date("[format]", $timestamp)