我有一个人们可以投票的图像应用程序,我想检查用户的IP以禁止他第二次投票。对于这个最好的方法是什么,如果我得到ip并填写.txt文件,并且每次用户尝试投票时检查该文件并且如果ip不在文件中允许他?还是有更好的解决方案
答案 0 :(得分:3)
您可以像这样获得用户:
$users_ip = $_SERVER['REMOTE_ADDR'];
不要使用文本文件(因为这对你的硬盘有害,I / O太多);而是使用数据库。
当用户到达投票脚本时:
如果从他上次投票的时间跨度>它应该是什么,让他投票,为那个IP更新数据库表" last_vote"
如果用户在db(第一次投票)中没有记录;使用ip和当前时间戳
答案 1 :(得分:0)
您还可以按时间间隔存储Cookie。如果用户投票支持某个问题,请保存该问题的特定Cookie,例如。
setcookie('voted'.$_POST['qid'], 'yes', time() + 4800 , "/");
如果问题是新的,那么用户可以投票。