У меня есть таблица MySQL с именем products_reservations
, куда я вставляю данные, когда пользователь нажимает кнопку, чтобы положить что-то на свою карточку покупок.Эти продукты должны быть зарезервированы на определенное количество времени.В таблице есть столбец с именем timestamp
, в котором точные дата и время в формате 2018-10-22 21:29:16
сохраняются после нажатия кнопки для резервирования.Теперь я хочу установить интервал для удаления записи в таблице products_reservations
через ровно 21 600 секунд или 6 часов в том же PHP-скрипте.Мой запрос к настоящему времени выглядит следующим образом:
// ADD RESERVATION
$ins = $c->prepare("INSERT INTO products_reserved (uid,pid,timestamp) VALUES (?,?,?)");
$ins->bind_param('sss', $uid, $id, $timestamp);
$ins->execute();
$needid = $ins2->insert_id;
$timestampSeconds = strtotime($timestamp);
// SET INTERVAL FOR 6 HOURS
$delIntv = $c->prepare("
DELETE FROM products_reserved
WHERE ? = (? + INTERVAL 21600 SECOND)
AND id = ?
");
$delIntv->bind_param('sss', $timestampSeconds, $timestampSeconds, $needid);
$delIntv->execute();
if($ins && $delIntv) {
$c->commit();
}
Я знаю, что делаю это совершенно неправильно, или, скорее, я бы поставил на это.Пока не нашел ничего полезного.Есть идеи?