2010-08-07 31 views
2

我想在我的網站上設置臨時禁止系統來禁止用戶,例如僅限一天或一週。我可以選擇禁令的持續時間,並將適當的記錄寫入數據庫,所以我想知道在禁止期結束時是否可以自動更新該記錄......或者您會提出什麼建議?一段時間後自動解鎖用戶

回答

5

我會爲禁用記錄創建一個單獨的表。每個記錄將包含:

  • 被禁止的用戶(外鍵)。
  • 誰提出了禁令(外鍵)。
  • 禁令發佈時間。
  • 禁令到期的時間。
  • 禁令的原因。
  • 禁止時用戶的IP地址。
  • 如果禁令仍然有效(如果您決定在全職時間到期之前取消用戶禁用)。

也許一些其他信息,這取決於你想跟蹤什麼。當禁令到期時,而不是是從禁止表中刪除記錄的好主意。這意味着你有一個禁止你做的日誌,這可以用來確定誰是重複犯人。

你可能會遇到的另一個問題是,人們故意通過抱怨不公平的禁令和謊言來解釋什麼時候以及爲什麼被禁止和解禁而引發問題。如果你保存了所有禁令的完整日誌,處理這些人就容易多了。

+1

好的答案,這樣,你可以追蹤特定用戶的禁止歷史。另外,我們可能需要添加狀態,以追蹤已解除的禁令。稍後保存一些查詢可能會很好。 – ariefbayu 2010-08-07 11:51:20

+0

@silent:+1好的,我加了。 – 2010-08-07 11:52:47

2

我會在數據庫中保存禁止的結束日期(也可能是時間)。只要用戶嘗試登錄,就可以將當前日期(時間)與結束日期進行比較;如果更新,用戶不會被禁止並且可以登錄。如果您的用戶擁有配置文件,您可以做同樣的事情:比較當前日期(時間)和禁止的結束,並根據該信息顯示「禁止」。

相關問題