2016-08-20 60 views
0

好的,所以我有一個網站,允許用戶發佈類似Facebook和Twitter的內容。當用戶提交帖子時,我想檢查該用戶的相同內容是否已在過去10小時內提交。如果是的話我想將用戶重定向回,用類似「複製郵報」如何使用Laravel檢查類似Twitter的重複帖子

我現在有這個來檢查,如果用戶已張貼在過去一小時超過10後:

//Only allow user to post 10 statuses each hour 
    $timestamp = time() - 36000; 
    $recentStatuses = Status::where('user_id', Auth::user()->id)->where('created_at', '>', $timestamp)->orWhere('created_at', '=', $timestamp)->skip(0)->take(10)->get(); 
    if ($recentStatuses->count() <= 9) { 
    //post content 
} 

現在我想要檢查用戶是否在過去10小時內提交了相同內容,類似於Facebook和Twitter如何防止發佈相同內容以防止垃圾郵件。

+1

基本上,它可以通過在最後10小時檢索用戶的帖子來實現,並檢查當前的帖子內容,他/她嘗試後是一樣的帖子 – wonyeouuu

回答

0

你可以做一些類似的東西:

$recentStatuses->each(function($item) use($request){ 
    if($item->comment == $request->input('comment')) 
    { 
     return false; 
    } 
}); 
相關問題