2014-11-06 70 views
0

我無法正常工作。允許用戶每分鐘輸入一次

問題是,用戶只允許每分鐘創建一次評論。就這麼簡單....

$checkLastComment = Comment::where('user_id', '=', 1) 
     ->where('created_at', '<', 'CURDATE() + INTERVAL 1 MINUTE')->count(); 
+1

你得到一個錯誤?請向我們提供更多信息。也許你必須把它作爲'''whereRaw('created_at ArjanSchouten 2014-11-06 19:25:13

回答

0

你應該在這裏,而使用:

$checkLastComment = Comment::where('user_id', '=', $id) 
     ->where('created_at', '>=', 'DATE_SUB(NOW(), INTERVAL 1 MINUTE)')->first(); 

if ($checkLastComment) { 
    // user not allowed to add new comment 
} 
-1

3個問題在你的代碼:

  1. 你需要比>更大,不低於<運營商
  2. 您需要原始狀態
  3. 您不能使用curdate(),因爲它的時間部分總是00:00:00

因此,這裏是你想要什麼:

$notAllowedToComment = Comment::where('user_id', '=', 1) 
    ->where('created_at', '>', DB::raw('now() - INTERVAL 1 MINUTE'))->count(); 
+0

Downvoter小心解釋 – 2014-11-09 21:58:30