上面的刷票程序是改进后的,原来的主要代码如下:
<?
php
$host = " dev.jxnews.com.cn " ;
$port = " 80 " ;
$msg = " POST /dev05/school/dx_insert.php HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, */*
Referer: http://dev.jxnews.com.cn/dev05/school/dx.php
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Maxthon)
Host: dev.jxnews.com.cn
Content-Length: 144
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: univip=123456
dx=109&dx=113&dx=114&dx=115&dx=116&dx=117&dx=118&dx=119
&dx=120&dx=111&randnum=123456&choiceid=111
&typ=4&Submit=+++%CC%E1+%BD%BB+%D1%A1+%CF%EE+++ " ;
wfile( date ( ' Y-M-d H:i:s ' , time ()) . " <br> " );
for ( $i = 1 ; $i <= 3 ; $i ++ ){
$fp = fsockopen ( $host , $port , $errno , $errstr , 10 );
if ( ! $fp ){
echo ( " 第 " . $i . " 票:投票失败!<br> " );
echo ( " errstr: " . $errstr . " errn " . $errno );
} else {
fputs ( $fp , " $msg " );
if ( ! feof ( $fp )){
$fback = fgets ( $fp , 128 );
if ( ereg ( ' /s*/ ' , $fback )){ // 这里采用简化处理,认为连接成功,则投票成功!
echo ( " 第 " . $i . " 票:投票成功!<br> " );
}
wfile( $fback );
}
fclose ( $fp );
sleep ( 1 ); // 缓冲,太快的话,怕他们受不了。^_^
}
}
// 对投票返回结果,偶保存了一下。^_^一下是保存函数。使用追加方式的存储,有兴趣可以看看。
function wfile( $content , $file = " pollresult.txt " , $mode = ' a+ ' ) {
$oldmask = umask ( 0 );
$fp = fopen ( $file , $mode );
if ( ! $fp ) return false ;
fwrite ( $fp , $content );
fclose ( $fp );
umask ( $oldmask );
return true ;
}
?>
$host = " dev.jxnews.com.cn " ;
$port = " 80 " ;
$msg = " POST /dev05/school/dx_insert.php HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, */*
Referer: http://dev.jxnews.com.cn/dev05/school/dx.php
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Maxthon)
Host: dev.jxnews.com.cn
Content-Length: 144
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: univip=123456
dx=109&dx=113&dx=114&dx=115&dx=116&dx=117&dx=118&dx=119
&dx=120&dx=111&randnum=123456&choiceid=111
&typ=4&Submit=+++%CC%E1+%BD%BB+%D1%A1+%CF%EE+++ " ;
wfile( date ( ' Y-M-d H:i:s ' , time ()) . " <br> " );
for ( $i = 1 ; $i <= 3 ; $i ++ ){
$fp = fsockopen ( $host , $port , $errno , $errstr , 10 );
if ( ! $fp ){
echo ( " 第 " . $i . " 票:投票失败!<br> " );
echo ( " errstr: " . $errstr . " errn " . $errno );
} else {
fputs ( $fp , " $msg " );
if ( ! feof ( $fp )){
$fback = fgets ( $fp , 128 );
if ( ereg ( ' /s*/ ' , $fback )){ // 这里采用简化处理,认为连接成功,则投票成功!
echo ( " 第 " . $i . " 票:投票成功!<br> " );
}
wfile( $fback );
}
fclose ( $fp );
sleep ( 1 ); // 缓冲,太快的话,怕他们受不了。^_^
}
}
// 对投票返回结果,偶保存了一下。^_^一下是保存函数。使用追加方式的存储,有兴趣可以看看。
function wfile( $content , $file = " pollresult.txt " , $mode = ' a+ ' ) {
$oldmask = umask ( 0 );
$fp = fopen ( $file , $mode );
if ( ! $fp ) return false ;
fwrite ( $fp , $content );
fclose ( $fp );
umask ( $oldmask );
return true ;
}
?>
大概的咚咚就这样了。^_^
有兴趣的朋友们欢迎一起交流。