我想做一个一天投票一次的功能,谁给提个思路?

#1 小双

我想做一个一天投票一次的功能,写了个小代码,用session来记录,这样做的话,服务器会不会崩掉啊!该怎么做来?

if($_SESSION["IP"]){ 
$this->error('一天内只能投一票!',spUrl("main","index"));
}else{
$rows = array(
'vote' => $vote["vote"]+1,
);
$condition = array('id' => $ID);
$articleObj->update($condition,$rows);
$_SESSION["IP"] = $_SERVER["REMOTE_ADDR"]; //保存session
$this->success("投票成功!感谢支持!",$ref);
}

2010-06-02 15:05:33

#2 eoneliu

建立一个数据表。记录用户 投票的信息。

userid , ip, voteid, votedate,status

查询用户ip 或 voteid 的 用户记录。在对比 votedate 与 当前 时间。。。

2010-06-02 15:40:13

#3 jake的马甲

最好还是用数据表来做。

COOKIE,甚至是IP,都只能作为一个限制的手段,而非记录。

另外SESSION甚至不能记录也不能限制,因为SESSION在关闭浏览器的时候已经消失了。重开浏览器又是一个新的SESSION了。

2010-06-02 16:21:48