简单投票系统[防刷程序刷新]

简单投票系统[防刷程序刷新]

<?php
include_once("../inc/connect.php");
 $value =$_SERVER['HTTP_HOST']; 
 if(empty($_COOKIE["cook"])){  
  if(sizeof($_POST)<9){ exit("<script>alert('对不起,你还有选项未选!');history.back();</script>");}
  for($i=1;$i<=8;$i++){
   $c =$_POST['r'.$i];
    switch( intval($c) ){
     case 0:
      $word ='vote_r1';
      break;
     case 1:
      $word ='vote_r2';
      break;
     case 2:
      $word ='vote_r3';
      break;
     default:
      exit('error');
    }
   $sql ="update gx_votes set $word=$word+1,vote_times=vote_times+1 where id=$i";
   mysql_query($sql) or die(mysql_error());   
  }
  if( !empty($_POST['r9']) || !empty($_POST['r10']) ){ sava_voteinfo();}
  echo "<script>alert('感谢你的参与,你的报表己提交!');history.back();</script>";
  setcookie("cook", $value, time()+7200, "/");
  
 }else{
  print "对不起,你己经投票了,<a href=# onclick=\"history.back();\">点击返回</a>";
 }

function sava_voteinfo(){
 $vote_modi =addslashes(php_sava(isset($_POST['r9'])?$_POST['r9']:''));
 $vote_info =addslashes(php_sava(isset($_POST['r10'])?$_POST['r10']:''));
 $vote_ip =isset($_SERVER['REMOTE_ADDR'])?$_SERVER['REMOTE_ADDR']:'未获取到IP';
 $vote_time =date("Y-m-d H:i:s");
 $vote_sql ="Insert into ss(vote_ip,vote_modi,vote_info,vote_time) value('$vote_ip','$vote_modi','$vote_info','$vote_time')";
 mysql_query($vote_sql) or die('error');
 
}

function php_sava($str)
{
    $farr = array(
        "/\s+/",                                                                                         
        "/<(\/?)(script|i?frame|style|html|body|title|link|meta|\?|\%)([^>]*?)>/isU",  
        "/(<[^>]*)on[a-zA-Z]+\s*=([^>]*>)/isU",                                     
     
   );
   $tarr = array(
        " ",
        "<\\1\\2\\3>",           //如果要直接清除不安全的标签,这里可以留空
        "\\1\\2",
   );

  $str = preg_replace( $farr,$tarr,$str);
   return $str;
}

?>

最新说一下,这种用cookie形式的程序可以清除cookie再刷,有一种办法是我以前做过了,先是客户端防刷然后再把用户的IP保存到数据库,这样用户刷时就会用php程序来检查是否在我们规定的时间内操作喽这样就可以实现真正的防刷喽.

时间: 2024-09-04 09:09:50

简单投票系统[防刷程序刷新]的相关文章

投票系统防刷代码

投票系统防刷代码 $value =$this->host;         if(empty($_COOKIE["cook"])){      setcookie("cook", $value, time()+1800, "/");       $v_host = $this->host;         $v_ip = $this->get_real_ip();           $v_date =date("Y-

PHP+MySQL实现的简单投票系统实例_php技巧

本文实例讲述了PHP+MySQL实现的简单投票系统.分享给大家供大家参考,具体如下: <html> <head><title>手机系统调查问卷</title> <style type="text/css"> <!-- span{ width:600px; height:100px; background-color:write; postion:relative; border:1px #cccccc solid; }

asp.net c投票系统(防刷功能)

asp教程.net c投票系统(防刷功能) 本文章是利用了asp.net教程 mssql做的一款防刷投票系统,他是利用了cookie来实现的. */ using system; using system.configuration; using system.data; using system.linq; using system.web; using system.web.security; using system.web.ui; using system.web.ui.htmlcontr

php简单防刷计数器-PHP实例

 [导读] php简单防刷计数器,lt;?phprequire_once'config.php';functioncounter{nbsp;session_start;nbsp; $sql=selectcounterfromcounter;nbsp;$result=@MySQL_query$sql;nbsp;if!empty$resultnbsp;{nbsp;$row=mysql_fetch_array$result;nbsp;$counter=++$row[co... <?php requir

简单asp投票系统源码

本文章 一款简单asp教程投票系统源码,同时可以判断用户是否是当天第一次投票,如果不是就提示感谢您的支持,您已经投过票了,谢谢,否则就增加投票资料,并且把用户的ip地址保存到cookies里面,这样可以判断用户是否投票了. <%dim options,total,sql,i,answer if request.querystring("stype")="" then  if request.servervariables("remote_addr&q

php简单 在线投票系统 源码下载,

php简单 在线投票系统 源码下载,上次要和你一家公合作他们说要我写一个简单的投票系统,但是每一个IP只能投一次,好了下面就是我写的一个最最简单的投票系统了,是用php实现的. 先来创建数据库.有两个一个记录投票次数与相关信息一个是记录IP. CREATE TABLE IF NOT EXISTS `lj_vote` (   `id` int(8) NOT NULL auto_increment,   `v_type` int(4) default '1',   `v_caption` varch

php简单的投票系统[原创]

php简单的投票系统[原创] <?php include_once("../inc/connect.php");  $value =$_SERVER['HTTP_HOST'];   if(empty($_COOKIE["cook"])){     if(sizeof($_POST)<9){ exit("<script>alert('对不起,你还有选项未选!');history.back();</script>"

防作弊很强的投票系统机制源代码

源代码|作弊|投票系统 这个是投票前一页代码.在此页点击投票.<%Response.Cookies("cook")="yes"%>以下是投票页代码<%if Request.Cookies("cook")<>"yes" thenresponse.write "<script language='javascript'>alert('cookies没开启无法进行投票');loca

通过cookies注入破解ASP通用防注入程序

在一次网站被注入木马后,很是郁闷,网站已经放入了通用的ASP防注入程序,但依然被注入. 在查阅了大量的资料后,终于发现了问题所在. 现在很多网站都加了防注入系统代码,你输入注入语句将无法注入~~感觉这样的防注入系统不错,但防注入系统没有注意到 Cookies 的问题!所以就有了Cookies注入~~ 我们来研究一下怎样情况下才会有Cookies注入!如果你学过ASP你应该会知道 Request.QueryString (GET) 或 Request.Form (POST)!呵,没错,这就是我们用