我有一個在線PHP系統,用戶爲他們的朋友投票不同的獎項,但是我發現在頁面中間和底部的獎項獲得較少的投票總體。我希望這是平均分配的,所以想出了隨機排列的獎勵列表,以使其每次載入頁面時都有所不同。最有效的方式,以預設的隨機順序列表
然而,這似乎混淆了用戶,因爲他們保存或重新訪問頁面的一切動作,有沒有一種方式,我可以隨機地訂購列表,但保存該用戶的訂單,這意味着每個用戶的不同。
投票清單來自數據庫,獎項名稱已預先設定。
你知道一個辦法嗎?
最後我用:
//Shuffle & Organise
if(is_numeric($pg)) { $start = ($pg*15)-14; $end = $pg*15; $pg = (int) $pg; } else { $start = 1; $end = 15; $pg = (int) 1; }
if($end>count($vote_name)) { $end = count($vote_name); }
$vote_boxes = range($start,$end);
srand($user['id']);
shuffle($vote_boxes);
//Create the voting boxes + js
foreach($vote_boxes as $row) {
$content .= vote_form($row);
}
我使用了一個基於您發佈的信息與上述MySQL解決方案相結合的解決方案。完成後我會在這裏發佈。 – 2009-11-10 17:56:16