0
嗨我有一個方法來防止二次投票的方式在人們可以投票或投票下來評論的網站的問題。像Stackoverflow! :)防止第二票在評論投票
問題是我如何跟蹤評論是否已被登錄用戶投票。讓我們假設這是一個在線電子商務商店的產品評論。下面是我想:
- 全部點評數據被存儲在一個名爲表 '評論'
- 字段名:REVIEW_ID,PRODUCT_ID,USER_ID,標題,描述,TIME_CREATED,up_votes,down_votes,up_voters,down_voters
- up_votes和down_votes包含的票數投票向上或向下
- up_voters和down_voters包含的人誰或格式1101.1102.1103與USER_ID 1101,1102和1103
當一個人點擊向上投票按鈕時,系統將檢查當前用戶的user_id是否與up_voters中的任何人匹配。一個爆炸函數將把1101.1102.1103變成一個數組,in_array()將被用來檢查用戶是否已經投票。
有沒有更好的方式去做這件事?
太棒了!我會把選票放在一個單獨的表格中......我想知道什麼時候擴展5000個產品,每個產品有50票,這是一個25K行的表格。不知道如果通過表搜索將會很慢 – Nyxynyx 2011-06-10 03:40:10
明智地選擇您的主鍵(PK)。基於PK的數據訪問將快速,因爲AFAIK大多數數據庫在PK上使用唯一索引。您也可以將product_id移動到投票表。 – Lobo 2011-06-10 03:50:37