[英]SQL Type NOW() not working
我有這個查詢;
"INSERT INTO download(download_key, ip, file, expire) VALUES ('".$text."',
'".$mysql->real_escape_string($_SERVER['REMOTE_ADDR'])."',
'".$searchQuery['file_match']."',
'NOW() + INTERVAL 10 MINUTES')"
當我將其插入數據庫時,行過期始終是0000-00-00 00:00:00。 我嘗試了以下類型:
但是始終是00:00:00或00:00:00。
NOW()的正確類型是什么? 我正在使用MYSQL
刪除引號,引號用於字符串
NOW() + INTERVAL 10 MINUTE
"INSERT INTO download(download_key, ip, file, expire) VALUES ('".$text."',
'".$mysql->real_escape_string($_SERVER['REMOTE_ADDR'])."',
'".$searchQuery['file_match']."',
NOW() + INTERVAL 10 MINUTES)"
我要向已經說過的人添加一點東西。
除了您不應該將sql函數作為字符串傳遞之外,不要在引號中使用NOW() + INTERVAL 10 MINUTES
,您還可以為日期傳遞字符串。 例如,您可以使用php生成該日期。
試試這個小提琴來檢查如何將簡單的DATE放入數據庫中: http : //sqlfiddle.com/#!2/cddc1/1
同樣使用PHP,您可以使用以下代碼生成日期:
$minutes = 10;
$date = date('Y-m-d H:i:s', time() + $minutes*60);
$query = "INSERT INTO download(download_key, ip, file, expire) VALUES ('$text',
'{$mysql->real_escape_string($_SERVER['REMOTE_ADDR'])}',
'{$searchQuery['file_match']}',
'$date')";
感謝@Kelu Thatsall:修復:
NOW() + INTERVAL 10 MINUTE
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.