php刷票
‘壹’ php网站刷票POST现在有个随机值了action=vote&city=cq&rnd=0994&id=165这样的,原来都没有rnd。怎办
没明白 你要刷票?
‘贰’ php实现在线投票系统的主要难点与重点
最近自己写了一个视频投票的,算是有些了解吧
难点在于防止刷票
这点我们可以在投票处理时,记录下投票者的ip地址和投票时间(如果对投票有时间限制),并在session或者cookie中存下信息,表示已经投过票。投票前就在数据库中查询是否存在相同的ip地址。这样算是能够防止一般思路的刷票了。
‘叁’ PHP里模拟Post提交是什么意思
//这是我写的封装类,也就是模拟POST提交
//$rl也就是URL地址,比如www.youku.com
//$timeout超时时间
//$data为POST数组
//模拟POST提交的用途,采集数据,模拟用户登录(为什么现在登录需要验证码,不是为了测你智商..
更不是考你的眼力,而防止你模拟登录..用暴力破解法强行破解密码)
functioncurl_file_post_contents($rl,$timeout=5,$data){
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$rl);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_TIMEOUT,$timeout);
curl_setopt($ch,CURLOPT_USERAGENT,_USERAGENT_);
curl_setopt($ch,CURLOPT_REFERER,_REFERER_);
curl_setopt($ch,CURLOPT_POST,1);//设置为POST传输
curl_setopt($ch,CURLOPT_POSTFIELDS,$data);//添加post数据
$r=curl_exec($ch);
var_mp($ch);
if($r===false){//判断错误
echocurl_error($ch);
}
$info=curl_getinfo($ch);//能够在cURL执行后获取这一请求的有关信息
curl_close($ch);
return$r;
}
‘肆’ PHP怎么做到统计单篇文章的浏览量
先给储存相应文章的数据表增加一个记录访问量的字段。
1, 可以每访问一次,字段数量加一,但是这样会不准确,因为只要刷新一下,就会记录一下。
2, 为了防止上面的情况发生,可以记录访问者的IP地址,重复的IP地址访问,只记录一次。
3, 但是,一个IP地址,只记录一次,也有问题,比如,一个局域网,多个访问者,共用一个IP地址,这样也会记录不准确。所以最好,一个IP地址一定时间内访问记录一次。这样相对好一点。
4, 不过,即使记录IP地址,但是也有可能有恶意的用户通过切换IP,或者通过刷票软件来刷访问量。这些问题,还需要更深的研究一下,怎么应对。
比如:
<?php
$ip = $_SERVER['REMOTE_ADDR'];
//循环对比数据表中储存的IP,如果IP存在,不再记录
$query = mysql_query("select * contetns where ip = '".$ip."'");
if(mysql_num_rows($query) > 0){
//IP存在
}else{
//记录访问量
}
?>
‘伍’ 有PHP厉害的大师吗,利用PHP发送包POST信息
曾有过一段代码,模拟SOAP的 POST数据包,贴给你吧
<?php
//构造模拟数据
$Data='
<?xml version="1.0" encoding="utf-8"?>
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Header>
<TransactionID xmlns="http://www.monternet.com/dsmp/schemas/">00110356700888</TransactionID>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<SyncOrderRelationReq xmlns="http://www.monternet.com/dsmp/schemas/"><Version>1.5.0</Version><MsgType>SyncOrderRelationReq</MsgType><Send_Address><DeviceType>0</DeviceType><DeviceID>0011</DeviceID></Send_Address><Dest_Address><DeviceType>400</DeviceType><DeviceID>0</DeviceID></Dest_Address><FeeUser_ID><UserIDType>1</UserIDType><MSISDN>13711428946</MSISDN><PseudoCode></PseudoCode></FeeUser_ID><DestUser_ID><UserIDType>1</UserIDType><MSISDN>13427549371</MSISDN><PseudoCode></PseudoCode></DestUser_ID><LinkID>SP</LinkID><ActionID>1</ActionID><ActionReasonID>1</ActionReasonID><SPID>950425</SPID><SPServiceID>-LS</SPServiceID><AccessMode>3</AccessMode><FeatureStr>MDM2MzQgTFM=</FeatureStr></SyncOrderRelationReq></SOAP-ENV:Body>
</SOAP-ENV:Envelope>';
//模拟数据结束.
//POST数据的URL
$_REQUEST['url']="http://somedomain.com/sms/03429/provision.php";
$getURL=$_REQUEST['url'];
$Method="POST";
//分析URL
$URL=parse_url($getURL);
$HOST=$URL["host"];
$PORT=$URL["port"]==""?"80":$URL["port"];
$FILE_PATH=$URL["path"];
$PATH=sprintf("%s %s HTTP/1.0\n",$Method,$FILE_PATH);
$STR=$URL["query"];
$End="\n";
$UserInfo[]=sprintf("Host: %s",$HOST).$End;
$UserInfo[]="Connection-Type: text/xml; charset=utf-8".$End;
$UserInfo[]="Content-Length: ".strlen($Data).$End;
$UserInfo[]="SOAPAction: sim.SyncOrderRelation".$End; //SOAP专用
$UserInfo[]=$Data.$End.$End;
$fp = fsockopen ($HOST,$PORT, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br>\n";
} else {
fputs ($fp, $PATH);
for($i=0;$i<count($UserInfo);$i++)
{
fputs ($fp, $UserInfo[$i]);
}
while (!feof($fp)) {
$outstr.= fgets ($fp,2048);
}
fclose ($fp);
}
//对方返回.
printf("%s\n%s\n%s","<xmp>",$outstr,"</xmp>");
?>
‘陆’ PHP,MYSQL制作投票系统,防止姓名、科室重复
这个表我觉得还缺个字段啊,还要加个摄影作品id的外键吧
不然你这个表根本就不能记录哪个科的哪个人给哪个作品投了票啊
还有竟然名字有重名,那你就不要存名字,存用户的主键啊
这样就可以避免这个问题
表结构这样就可以了
id pid userid time (pid为摄影作品的id)
投票的时候就判断下
$pid为作品id,前台传过来,用户id存在session中
SELECT COUNT(*) FROM table WHERE userid='".$_SESSION['userid']."' AND pid='".$pid."'
如果大于0则证明该用户已经给这个作品投票了,因为用户id不可能重复,所以即使用户重名也不影响了
‘柒’ php 手机客户端投票限制,如何规定一天内不能投票超过1次
以前的防刷票以前被琢磨透了
这里告诉你一种比较好的
动态投票ID
何为动态的投票ID,就是每个人或者每一次打开页面看见投票对象的ID都是不一样的。这样就让刷票的找不到北了。动态ID是一种只有你自己知道的加密方式,投票时再解密出ID就行了。
最后通过限制IP,每个IP每天一票。
‘捌’ php 怎么统计文章的访问量
先给储存相应文章的数据表增加一个记录访问量的字段。
可以每访问一次,字段数量加一,但是这样会不准确,因为只要刷新一下,就会记录一下。
为了防止上面的情况发生,可以记录访问者的IP地址,重复的IP地址访问,只记录一次。
但是,一个IP地址,只记录一次,也有问题,比如,一个局域网,多个访问者,共用一个IP地址,这样也会记录不准确。所以最好,一个IP地址一定时间内访问记录一次。这样相对好一点。
不过,即使记录IP地址,但是也有可能有恶意的用户通过切换IP,或者通过刷票软件来刷访问量。
<?php
$ip = $_SERVER['REMOTE_ADDR'];
//循环对比数据表中储存的IP,如果IP存在,不再记录
$query = mysql_query("select * contetns where ip = '".$ip."'");
if(mysql_num_rows($query) > 0){
//IP存在
}else{
//记录访问量
}
?>
文/搬砖家(简书作者)
原文链接:http://www.jianshu.com/p/3a1a9e618ede
着作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
‘玖’ 求免费的PHP投票系统完整版
网上有PHP源码,自己稍微改改即可
‘拾’ 求该页面刷投票方法技巧
- - 试试看这个笨办法?
断开网络 重新连接 这样子由于你是动态IP 服务商一般会给你一个不一样的IP
如果你是固定IP。。我就不知道咯~!