У меня проблема с меткой времени. я хотел бы проверить временную метку, если это в прошлом или в будущем. если это было в прошлом, запрос должен произойти.запрос timestamp не работает
до этого момента я получил MySQL-временную метку, которая будет извлекалось
$row = $query->fetch_object();
$timestamp = $row->time
, который содержит:
2012-04-04 12:06:38
для дальнейшей настройки я использую еще две переменные, которые будут:
$added = $timestamp + 1209600; //what adds 14days (1209600 seconds) to my db-timestamp
$check = $added < time(); //what checks if the 14days have passed or not
ОК теперь, если я тестирую все это с помощью var_dump, он вернется для каждого:
string(19) "2012-04-04 12:06:38" at var_dump($timestamp)
int(1211612) at var_dump($added)
bool(true) at var_dump($check)
так что моя проблема в том, что следующий запрос будет выполняться все время, даже в случае, когда должны были быть отправлены 14 дней. Я знаю, потому что я изменил метку времени до более ранней даты в январе. вот мой вопрос:
if ($check === true){
$update = $db->query("UPDATE table SET xy='1' WHERE x='$x'");
}
что-то кажется неправильным, и я понятия не имею, что это может быть.
Посмотрим запрос перед '$ query-> fetch_object()'. Используете ли вы функцию UNIX_TIMESTAMP() для преобразования столбца TIMESTAMP в целое число в запросе? Если нет, то $ timestamp - это строка. –