php模拟post提交数据类型,PHP_php模拟post提交数据的方法,本文实例讲述了php模拟post提交 - phpStudy...

php模拟post提交数据的方法

本文实例讲述了php模拟post提交数据的方法。分享给大家供大家参考。具体如下:

php模拟post提交数据,用处很多,可用来网站的采集,登陆等等

这里以我项目中的论坛登录为例加以说明:

function A_bbslogin($user_login,$password,$host,$port="80"){

//需要提交的post数据

$argv = array(

'cookie' => array('user_login' =>$user_login, 'password' => $password,'_wp_http_referer'=>'/bbpress/','re'=>'','remember'=>true)

);

foreach($argv['cookie'] as $key => $value) {

$params[] = $key . '=' . $value;

}

$params = implode('&', $params);

$header = "POST /bbpress/bb-login.php HTTP/1.1\r\n";

$header .= "Host:$host:$port\r\n";

$header .= "Content-Type: application/x-www-form-urlencoded\r\n";

$header .= "Content-Length: " . strlen($params) . "\r\n";

$header .= "Connection: Close\r\n\r\n";

$header .= $params;

$fp = fsockopen($host, $port);

fputs($fp, $header);

while(!feof($fp)) {

$str = fgets($fp); //以下是自己的逻辑代码,这里主要是模拟cookie,可用来同步登陆

if(!(strpos($str,"Set-Cookie:") === false)){

$tmparray = explode(" ",$str);

$cookiearray = explode("=",$tmparray[1]);

$cookiepaths = explode("=",$tmparray[6]);

$cookiename = urldecode($cookiearray[0]);

$cookievalue = urldecode(substr($cookiearray[1],0,strlen($cookiearray[1])-1));

$cookietime = time()+3600*24*7;

$cookiepath = urldecode(substr($cookiepaths[1],0,strlen($cookiepaths[1])-1));

setcookie($cookiename,$cookievalue,$cookietime,$cookiepath);

}

}

fclose($fp);

}

希望本文所述对大家的php程序设计有所帮助。相关阅读:

JavaScript控制两个列表框listbox左右交换数据的方法

javascript仿京东导航左侧分类导航下拉菜单效果

Asp.net MVC中使用JQuery插件ajaxFileUpload上传文件

HTML5 CSS3新的WEB标准和浏览器支持

对Yum源的一些优化配置

举例讲解JavaScript substring()的使用方法

jQuery添加和删除指定标签的方法

Laravel中使用FormRequest进行表单验证方法及问题汇总

jQuery实现防止提交按钮被双击的方法

sql not in 与not exists使用中的细微差别

jQuery中验证表单提交方式及序列化表单内容的实现

一个简单MVC5 + EF6示例分享

Mac OS X Mavericks的Finder打开不同标签的操作步骤

jQuery中$this和$(this)的区别介绍(一看就懂)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值