session_start();
if (session_is_registered("tp"))
{
echo "<script>alert('您已经投过票了,请稍后再来投票!');location='index.php';</script>";
exit;
}
else
{
$tp="ok";
session_register("tp");
}

以上这玩意呢,IE中打开了1篇文章投票完了,再点其他文章投票,就要:您已经投过票了,请稍后再来投票!,非要把IE关了再打开,才可以也就是投了1篇就挂了啊5555。如何在最要不一定要用户登录的情况下,每篇文章投了一次后就限制不要在投了,除非关了IE,再打开。

解决方案 »

  1.   

    可以在cookie中记录,投票的文章ID,每次投票判断cookie中是否有要投票的文章的id,有的话,就显示不要投票
      

  2.   

    建一张 用户 文章 投票次数(标识位) 对应表 根据这个表来判断 用户投票后有个记录
    不过楼主需求的 不登陆的情况也实现这种需求 可以根据客户端的ip 来判断 当然ip可以换 这个需求比较难满足
      

  3.   

    用数据库的话,感觉比较麻烦,用cookie或session吧。