Revision: 27555
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at June 15, 2010 22:13 by jretamal
Initial Code
<?php /** * PHP+MySQL * Restricts the vote to one vote per ip per day * @name IP Poll Restriction * @author Julio César Retamal Rojas - http://jretamal.cl * @version 0.1 * @date June 15, 2010 * @copyright (c) 2010 Julio César Retamal (jretamal.cl) * @usage * * //Your code * if(checkVote()) * { * //Vote successful * } * //Your code * * @installation * * CREATE TABLE IF NOT EXISTS `ip_poll` ( * `ip` varchar(15) NOT NULL, * `date` datetime NOT NULL * ) ENGINE=MyISAM DEFAULT CHARSET=latin1; * */ function getIP() { $ip=""; if (getenv("HTTP_CLIENT_IP")) $ip = getenv("HTTP_CLIENT_IP"); else if(getenv("HTTP_X_FORWARDED_FOR")) $ip = getenv("HTTP_X_FORWARDED_FOR"); else if(getenv("REMOTE_ADDR")) $ip = getenv("REMOTE_ADDR"); else $ip = ""; return $ip; } function checkVote() { $ip= getIP(); $sql= "select count(*) from ip_poll where ip = '".$ip."' and SUBSTR(date,1,10) = '".date("Y-m-d")."'"; if($res= mysql_query($sql)) { $row= mysql_num_rows($res); if($row == 0) { $sqlIns= "insert into ip_poll values ('".$ip."',now());"; if(mysql_query($sqlIns)) return true; else return false; }else{ return false; } }else{ return false; } } ?>
Initial URL
http://jretamal.cl
Initial Description
Restricts the vote to one vote per ip per day
Initial Title
IP Poll Restriction
Initial Tags
mysql, php, ip
Initial Language
PHP