首页 > php教程 > php手册 > 正文

年关了,抛一个模拟ip刷票的php程序

php中文网
发布: 2016-07-09 09:10:37
原创
1156人浏览过
<span style="color: #008080;"> 1</span> <?<span style="color: #000000;">php
</span><span style="color: #008080;"> 2</span> <span style="color: #800080;">$ip</span> = <span style="color: #800080;">$_GET</span>['ip'] ? <span style="color: #800080;">$_GET</span>['ip'] : '1.1.1.1'<span style="color: #000000;">;
</span><span style="color: #008080;"> 3</span> <span style="color: #800080;">$ipArr</span> = <span style="color: #008080;">explode</span>(".", <span style="color: #800080;">$ip</span><span style="color: #000000;">);
</span><span style="color: #008080;"> 4</span> <span style="color: #800080;">$ipArr</span>[3] = <span style="color: #800080;">$ipArr</span>[3] + 1<span style="color: #000000;">;
</span><span style="color: #008080;"> 5</span> <span style="color: #0000ff;">if</span> ( <span style="color: #800080;">$ipArr</span>[3] > 254<span style="color: #000000;"> )
</span><span style="color: #008080;"> 6</span> <span style="color: #000000;">{
</span><span style="color: #008080;"> 7</span>     <span style="color: #800080;">$ipArr</span>[3] = 1<span style="color: #000000;">;
</span><span style="color: #008080;"> 8</span>     <span style="color: #800080;">$ipArr</span>[2] = <span style="color: #800080;">$ipArr</span>[2] + 1<span style="color: #000000;">;
</span><span style="color: #008080;"> 9</span> <span style="color: #000000;">}
</span><span style="color: #008080;">10</span> <span style="color: #0000ff;">if</span> ( <span style="color: #800080;">$ipArr</span>[2] > 254<span style="color: #000000;"> )
</span><span style="color: #008080;">11</span> <span style="color: #000000;">{
</span><span style="color: #008080;">12</span>     <span style="color: #800080;">$ipArr</span>[2] = 1<span style="color: #000000;">;
</span><span style="color: #008080;">13</span>     <span style="color: #800080;">$ipArr</span>[1] = <span style="color: #800080;">$ipArr</span>[1] + 1<span style="color: #000000;">;
</span><span style="color: #008080;">14</span> <span style="color: #000000;">}
</span><span style="color: #008080;">15</span> <span style="color: #0000ff;">if</span> ( <span style="color: #800080;">$ipArr</span>[1] > 254<span style="color: #000000;"> )
</span><span style="color: #008080;">16</span> <span style="color: #000000;">{
</span><span style="color: #008080;">17</span>     <span style="color: #800080;">$ipArr</span>[1] = 1<span style="color: #000000;">;
</span><span style="color: #008080;">18</span>     <span style="color: #800080;">$ipArr</span>[0] = <span style="color: #800080;">$ipArr</span>[0] + 1<span style="color: #000000;">;
</span><span style="color: #008080;">19</span> <span style="color: #000000;">}
</span><span style="color: #008080;">20</span> <span style="color: #0000ff;">if</span> ( <span style="color: #800080;">$ipArr</span>[0] > 254<span style="color: #000000;"> )
</span><span style="color: #008080;">21</span> <span style="color: #000000;">{
</span><span style="color: #008080;">22</span>     <span style="color: #0000ff;">exit</span><span style="color: #000000;">();
</span><span style="color: #008080;">23</span> <span style="color: #000000;">}
</span><span style="color: #008080;">24</span> <span style="color: #800080;">$ip</span> = <span style="color: #008080;">implode</span>(".", <span style="color: #800080;">$ipArr</span><span style="color: #000000;">);
</span><span style="color: #008080;">25</span> <span style="color: #008000;">//</span><span style="color: #008000;"> 此处设置投票的id</span>
<span style="color: #008080;">26</span> <span style="color: #800080;">$post_data</span> = 'vid=8'<span style="color: #000000;">;
</span><span style="color: #008080;">27</span> 
<span style="color: #008080;">28</span> <span style="color: #008000;">//</span><span style="color: #008000;"> 投票的地址</span>
<span style="color: #008080;">29</span> <span style="color: #800080;">$url</span> = 'http://www.xxx.com/api.php?m=vote&a=voteto'<span style="color: #000000;">;
</span><span style="color: #008080;">30</span> <span style="color: #800080;">$user_agent</span> = "Mozilla/4.0"<span style="color: #000000;">;
</span><span style="color: #008080;">31</span> 
<span style="color: #008080;">32</span> <span style="color: #800080;">$headers</span>['CLIENT-IP'] = <span style="color: #800080;">$ip</span><span style="color: #000000;">;
</span><span style="color: #008080;">33</span> <span style="color: #800080;">$headers</span>['X-FORWARDED-FOR'] = <span style="color: #800080;">$ip</span><span style="color: #000000;">;
</span><span style="color: #008080;">34</span> 
<span style="color: #008080;">35</span> <span style="color: #800080;">$headerArr</span> = <span style="color: #0000ff;">array</span><span style="color: #000000;">();
</span><span style="color: #008080;">36</span> <span style="color: #0000ff;">foreach</span> ( <span style="color: #800080;">$headers</span> <span style="color: #0000ff;">as</span> <span style="color: #800080;">$n</span> => <span style="color: #800080;">$v</span><span style="color: #000000;"> )
</span><span style="color: #008080;">37</span> <span style="color: #000000;">{
</span><span style="color: #008080;">38</span>     <span style="color: #800080;">$headerArr</span>[] = <span style="color: #800080;">$n</span> . ':' . <span style="color: #800080;">$v</span><span style="color: #000000;">;
</span><span style="color: #008080;">39</span> <span style="color: #000000;">}
</span><span style="color: #008080;">40</span> 
<span style="color: #008080;">41</span> <span style="color: #800080;">$ch</span> =<span style="color: #000000;"> curl_init();
</span><span style="color: #008080;">42</span> curl_setopt(<span style="color: #800080;">$ch</span>, CURLOPT_POST, 1<span style="color: #000000;">);
</span><span style="color: #008080;">43</span> curl_setopt(<span style="color: #800080;">$ch</span>, CURLOPT_URL, <span style="color: #800080;">$url</span><span style="color: #000000;">);
</span><span style="color: #008080;">44</span> 
<span style="color: #008080;">45</span> curl_setopt(<span style="color: #800080;">$ch</span>, CURLOPT_HTTPHEADER, <span style="color: #800080;">$headerArr</span>); <span style="color: #008000;">//</span><span style="color: #008000;"> 构造IP</span>
<span style="color: #008080;">46</span> curl_setopt(<span style="color: #800080;">$ch</span>, CURLOPT_REFERER, "http://www.baidu.com/ "); <span style="color: #008000;">//</span><span style="color: #008000;"> 构造来路</span>
<span style="color: #008080;">47</span> curl_setopt(<span style="color: #800080;">$ch</span>, CURLOPT_HEADER, 1<span style="color: #000000;">);
</span><span style="color: #008080;">48</span> 
<span style="color: #008080;">49</span> curl_setopt(<span style="color: #800080;">$ch</span>, CURLOPT_USERAGENT, <span style="color: #800080;">$user_agent</span><span style="color: #000000;">);
</span><span style="color: #008080;">50</span> curl_setopt(<span style="color: #800080;">$ch</span>, CURLOPT_POSTFIELDS, <span style="color: #800080;">$post_data</span><span style="color: #000000;">);
</span><span style="color: #008080;">51</span> 
<span style="color: #008080;">52</span> <span style="color: #008080;">ob_start</span><span style="color: #000000;">();
</span><span style="color: #008080;">53</span> curl_exec(<span style="color: #800080;">$ch</span><span style="color: #000000;">);
</span><span style="color: #008080;">54</span> <span style="color: #800080;">$result</span> = <span style="color: #008080;">ob_get_contents</span><span style="color: #000000;">();
</span><span style="color: #008080;">55</span> <span style="color: #008080;">ob_end_clean</span><span style="color: #000000;">();
</span><span style="color: #008080;">56</span> 
<span style="color: #008080;">57</span> <span style="color: #0000ff;">echo</span> <span style="color: #800080;">$result</span><span style="color: #000000;">;
</span><span style="color: #008080;">58</span> <span style="color: #0000ff;">echo</span> '<meta http-equiv="refresh" content="1;url=http://localhost/phpk/post.php?ip=' . <span style="color: #800080;">$ip</span> . '"> '<span style="color: #000000;">;
</span><span style="color: #008080;">59</span> ?>
登录后复制

 

使用范围:所有限制ip地址的投票网站。投票数可到254*254*254*254。

 

 

如何防范该类刷票行为:

在获取客户端ip的时候优先使用:

立即学习PHP免费学习笔记(深入)”;

凹凸工坊-AI手写模拟器
凹凸工坊-AI手写模拟器

AI手写模拟器,一键生成手写文稿

凹凸工坊-AI手写模拟器 359
查看详情 凹凸工坊-AI手写模拟器
<span style="color: #800080;">$ip</span> = <span style="color: #008080;">getenv</span>('REMOTE_ADDR');
登录后复制

用remote_addr可以有效控制模拟ip投票,除非使用代理才能绕过去,但是用web实现代理,速度就很慢了。

 

 

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号