通过客户端IP限制投票次数
2015-04-02 11:54
381 查看
说明:本例通过获取客户端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 源码:
(3)vote.html 源码:
实现:获取客户端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>
相关文章推荐
- PHP实现通过IP限制投票次数
- 使用memcache或redis限制某个用户或者某ip用户一段时间内最大投票次数
- CAS通过用户名与ip限制密码输入错误次数
- UNIX下如何通过IP限制用户远程登录
- winform通过注册表限制软件使用次数(转自顺平小荷博客)
- 通过客户端IP来规定访问者的访问权限(原创)
- 利用IP地址限制单位时间内投票次数
- 实现不受IP限制多次投票程序
- 通过IP查询客户端用户所在地的天气预报
- 如何通过T-SQL获得当前连接的客户端的IP和机器名
- 谈谈单位时间内投票次数限制
- 如何通过配置F5 使业务程序获得真实客户端IP 及 IIS 日志记录真实客户端的IP
- 对客户端的ip限制函数
- Win2003下通过IP安全策略限制udp-flood发包的批处理代码
- 通过mod_limitipconn模块来限制apache的并发连接数
- 通过得到客户端IP,和从数据库中得到IP位数
- 如何通过T-SQL获得当前连接的客户端的IP和机器名...
- 如何通过T-SQL获得当前连接的客户端的IP和机器名...
- ASP实例:限制ip投票
- 通过本机IP作为访问网站服务器限制条件