是否可以使用mysqls NOW()
函數並向其中添加秒鐘?
像這樣;
$q = $dbc -> prepare ("UPDATE account SET time = NOW() + $seconds WHERE id = ?");
感謝
是否可以使用mysqls NOW()
函數並向其中添加秒鐘?
像這樣;
$q = $dbc -> prepare ("UPDATE account SET time = NOW() + $seconds WHERE id = ?");
感謝
如果你想在MySQL做到這一點,您可以使用
DATE_ADD(NOW(), INTERVAL $seconds SECOND)
或
UNIX_TIMESTAMP() + $seconds
沒有這是不可能的。
你可以這樣做:
$time = date('Y-m-d H:i:s', strtotime("+2 seconds"));
$q = $dbc->prepare ("UPDATE account SET time = '$time' WHERE id = ?");
@cgwebprojects是的,這是MySQL默認格式。 – Neal 2011-12-14 17:19:47
我不知道你的確切DBC類的用法,但最有可能,你想簡單地添加另一個參數:
$q = $dbc->prepare ("UPDATE account SET time = NOW() + ? WHERE id = ?");
$q->execute($seconds, $id);
仍然無法正常工作(請參閱其他答案) – Neal 2011-12-14 17:19:06
您可以添加秒將其與DATE_ADD()
:
$q = $dbc -> prepare ("UPDATE account SET time = DATE_ADD(NOW(), INTERVAL $seconds SECONDS) WHERE id = ?");
請注意,如果我得到$秒=「小johhny表;」進入你的PHP,你有一個漏洞。你可能想使用你的數據庫層佔位符系統(?)而不是簡單地注入$秒。 – berkes 2011-12-14 20:46:02
$q = $dbc -> prepare ("UPDATE account SET time = date_add(NOW() + INTERVAL $seconds SECOND) WHERE id = ?");
`UNIX_TIMESTAMP()` – 2011-12-14 17:18:23