通过客户端IP限制投票次数

说明:本例通过获取客户端IP地址来限制用户的投票次数,每个IP只可以投票一次。

实现:获取客户端IP地址需要使用$_SERVER[ ]全局数组中的$_SERVER['REMOTE_ADDR']参数。本例将客户端IP地址存放到数据库,当用户提交投票时,判断该IP是否在数据库中,从而实现通过客户端IP限制投票次数。

(1)创建数据库:

数据库名字db_test ,表名为 tb_iplimit;


SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for `tb_iplimit`
-- ----------------------------
DROP TABLE IF EXISTS `tb_iplimit`;
CREATE TABLE `tb_iplimit` (
  `ip` varchar(16) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

(2)IPLimit.php 源码:

<?php
$conn = mysql_connect("localhost","root","root");  //hostname,username,userpassword
mysql_select_db("db_test",$conn);  //databasename,connection name
mysql_query("set names utf8");        //set charset
$ip = $_SERVER['REMOTE_ADDR'];        //get client ip
$insert = "insert into tb_iplimit(ip)values('$ip')";
$select = "select * from tb_iplimit where ip = '$ip' ";
if(isset($_POST['submit']) and $_POST['submit']=="vote"){
	$value = mysql_query($select,$conn);
	//echo "value: ".$value;
	if(mysql_num_rows($value)==0){
		$result = mysql_query($insert,$conn);
		//echo "<br/>result: ".$result;
		if($result){
			echo "<script> 
			      alert('vote success!');
				  window.location.href = 'vote.html';
				  </script>";
		}else{
			echo "<script> 
			      alert('vote failed!');
				  window.location.href = 'vote.html';
				  </script>";
		}
	}else{
		echo "<script> 
			  alert('You have voted!');
			  window.location.href = 'vote.html';
			  </script>";
	}
}
?>

(3)vote.html 源码:

<!DOCTYPE HTML>
<html lang="en">
<head>
   <title>vote</title>
</head>
<body>
  <form action="IPLimit.php" method="post">
     1.Do you like this game?<br />
        A.<input type="radio" name="question1" value="like" /> Yes, I like it.<br />
        B.<input type="radio" name="question1" value="dislike" /> No, I hate it.<br />
	 <input type="submit" name="submit" value="vote" />
  </form>
</body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
微信投票——助您打开微信成功之门 注意:此插件完全依靠【禾今】微信助理并绑定微信公众开发接口,安装此插件前,请先安装【禾今】微信助理 功能介绍: 1、可设置开启和关闭限制投票用户IP区域,可限制省份限制,如“江苏”,也可限制城市限制,如“常州”! 2、可设置开启和关闭投票验证码功能,投票前需要手动拖动图片完成验证!屏蔽机器刷票! 3、设置每个微信用户每天可投票数,还能开启每个微信用户每天给同一个作品只能投一票的限制! 4、每个活动独立可开启和关闭 报名期和投票期重叠的时间段每个作品最高票数限制,比如报名时间是 1-10号 投票时间是 5-30号,那么5-10号期间每个作品的最高票数只能是设置的这么多,这样可以防止前后报名作品的票数差距太大! 5、一键导出报名作品excel文件,可设置导出数量,想导多少导多少! 6、每个作品的投票记录可以清晰查看,并可一键导出每个作品的投票记录excel文件! 7、两套投票主题风格可供选择 8、强制关注公众才能投票和报名 9、可设置投票者每投一票奖励积分 10、可结合微信刮刮卡插件,用投票奖励的积分去刮卡 11、在线报名,报名时间和投票时间自定义,可设置投票期间也可报名 12、活动可灵活的设置报名是否需要审核,白天开启免审,晚上开启审核 13、三个活动说明自定义项,可随意放置任何代码:图片、文字、链接、音乐、视频等! 14、后台支持手动添加作品,也可以修改所有作品的票数等信息! 15、独立的第三方统计代码放置位,让你了解投票给你带来的流量、ip等信息! 16、可自定义报名作品上传的最多图片数! 17、后台通过作品ID一键搜索功能,快捷的找到要修改的作品! 18、后台可屏蔽作品,不出现在列表中,无法投票

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值