首页 > WEB开发 > 代码 > PHP投票小程序、防超时、防IP限制
2015
09-17

PHP投票小程序、防超时、防IP限制

<?php
set_time_limit(0);//防止超时
  
function toupiao($i)
  
{
  
        $proxy = array('182.48.116.51:8080','110.177.63.191:9999','221.10.40.238:80','221.10.40.236:83','221.10.40.237:80','221.10.102.199:82','42.121.0.247:9999','42.121.28.111:3128','117.135.194.139:80','119.147.91.21:80','58.247.109.243:80','118.233.36.246:8585');
  
        $url = "http://www.example.com/tea/love.php";
  
        $ch = curl_init();
  
       $data = array (
        'id' => '13'
        );
  
//设置来源地址,如果不设置,论坛服务器有可能有验证不允许回复
  
curl_setopt($ch,CURLOPT_REFERER,"http://www.example.com/tea/index.php?m=content&amp;c=index&amp;a=lists&amp;catid=10");
  
//能保存cookie
  
curl_setopt($ch,CURLOPT_COOKIESESSION,true);
  
curl_setopt($ch,CURLOPT_USERAGENT,"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)");
  
curl_setopt($ch, CURLOPT_PROXY, $proxy[$i]);
  
curl_setopt($ch, CURLOPT_POST, 1);
  
curl_setopt($ch, CURLOPT_HEADER, 0);
  
curl_setopt($ch, CURLOPT_URL,$url);
  
//为了支持cookie
  
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  
$result = curl_exec($ch);
  
if(curl_errno($ch))
  
{
  
        echo 'Curl error: ' . curl_error($ch);
  
}
  
}
  
for($i=0;$i<=11;$i++)
  
{
  
        echo "begin 第".$i."次投票";
  
        toupiao($i);
  
        echo 'end';
  
        echo "</br>";
  
}

编程技巧