【发布时间】:2010-12-15 02:57:03
【问题描述】:
我有一个在线 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);
}
【问题讨论】: