使用PHP socke 向指定页面提交数据


Posted in PHP onJuly 23, 2008

在jquery里用 load post 等等,无法得到我想要的结果!于是突然-----这几天想的东西都白想了,现在只好这样了
现在想在php里面向指定的页面提交数据,应该有,还可以有返回值
于是找了这个函数,不过没有试,我想可以不知道空间能不能通得过
是村里拿来的! 

<?php 
/*----------------------------------------------------------- 
*功能:使用PHP socke 向指定页面提交数据 
* 
*作者:Honghe.c 
* 
*说明:post($url, $data) 
* 
*      $url    = 'https://3water.com'; 
*      $data[user] = 'hong'; 
*      $data[pass] = 'xowldo'; 
*      echo post($url, $data); 
*-----------------------------------------------------------*/ function post($url, $data) { 
    $url = parse_url($url); 
    if (!$url) return "couldn't parse url"; 
    if (!isset($url['port'])) { $url['port'] = ""; } 
    if (!isset($url['query'])) { $url['query'] = ""; } 
    $encoded = ""; 
    while (list($k,$v) = each($data)) { 
        $encoded .= ($encoded ? "&" : ""); 
        $encoded .= rawurlencode($k)."=".rawurlencode($v); 
    } 
    $fp = fsockopen($url['host'], $url['port'] ? $url['port'] : 80); 
    if (!$fp) return "Failed to open socket to $url[host]"; 
    fputs($fp, sprintf("POST %s%s%s HTTP/1.0n", $url['path'], $url['query'] ? "?" : "", $url['query'])); 
    fputs($fp, "Host: $url[host]n"); 
    fputs($fp, "Content-type: application/x-www-form-urlencodedn"); 
    fputs($fp, "Content-length: " . strlen($encoded) . "n"); 
    fputs($fp, "Connection: closenn"); 
    fputs($fp, "$encodedn"); 
    $line = fgets($fp,1024); 
    if (!eregi("^HTTP/1.. 200", $line)) return; 
    $results = ""; $inheader = 1; 
    while(!feof($fp)) { 
        $line = fgets($fp,1024); 
        if ($inheader && ($line == "n" || $line == "rn")) { 
        $inheader = 0; 
    } 
    elseif (!$inheader) { 
        $results .= $line; 
    } 
    } 
    fclose($fp); 
    return $results; 
} 
/* 
$url = 'http://video.xxx.com:80/game_vm.php'; 
$data['gid'] = '1'; 
echo post($url, $data); 
*/ 
?>
PHP 相关文章推荐
Windows中安装Apache2和PHP4权威指南
Nov 18 PHP
PHP Token(令牌)设计
Mar 15 PHP
php 处理上百万条的数据库如何提高处理查询速度
Feb 08 PHP
php access 数据连接与读取保存编辑数据的实现代码
May 12 PHP
PHP 循环删除无限分类子节点的实现代码
Jun 21 PHP
php中实现获取随机数组列表的自定义函数
Apr 02 PHP
PHP实现简单数字分页效果
Jul 26 PHP
Android AsyncTack 异步任务实例详解
Nov 02 PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 PHP
详细解读php的命名空间(一)
Feb 21 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 PHP
php反序列化长度变化尾部字符串逃逸(0CTF-2016-piapiapia)
Feb 15 PHP
php sprintf()函数让你的sql操作更安全
Jul 23 #PHP
PHP版自动生成文章摘要
Jul 23 #PHP
php array_merge下进行数组合并的代码
Jul 22 #PHP
用php过滤危险html代码的函数
Jul 22 #PHP
php socket方式提交的post详解
Jul 19 #PHP
php minixml详解
Jul 19 #PHP
php正则校验用户名介绍
Jul 19 #PHP
You might like
在 PHP 中使用随机数的三个步骤
2006/10/09 PHP
PHP5 的对象赋值机制介绍
2011/08/02 PHP
php解析字符串里所有URL地址的方法
2015/04/03 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
解决windows上php xdebug 无法调试的问题
2020/02/19 PHP
基于jquery实现拆分姓名的方法(纯JS版)
2013/05/08 Javascript
JavaScript将字符串转换成字符编码列表的方法
2015/03/19 Javascript
javascript鼠标滑动评分控件完整实例
2015/05/13 Javascript
在JavaScript中操作时间之getMonth()方法的使用
2015/06/10 Javascript
基于jquery实现导航菜单高亮显示(两种方法)
2015/08/23 Javascript
jquery简单倒计时实现方法
2015/12/18 Javascript
学习JavaScript图片预加载模块
2016/11/07 Javascript
让微信小程序支持ES6中Promise特性的方法详解
2017/06/13 Javascript
JQuery EasyUI 结合ztrIee的后台页面开发实例
2017/09/01 jQuery
vue项目中vue-i18n和element-ui国际化开发实现过程
2018/04/25 Javascript
js实现轮播图的完整代码
2020/10/26 Javascript
javascript中的闭包概念与用法实践分析
2019/07/26 Javascript
JS实现手写 forEach算法示例
2020/04/29 Javascript
python框架django基础指南
2016/09/08 Python
使用Python多线程爬虫爬取电影天堂资源
2016/09/23 Python
Python 专题六 局部变量、全局变量global、导入模块变量
2017/03/20 Python
浅析Python3中的对象垃圾收集机制
2019/06/06 Python
给我一面国旗 python帮你实现
2019/09/30 Python
用python中的matplotlib绘制方程图像代码
2019/11/21 Python
浅谈tensorflow 中tf.concat()的使用
2020/02/07 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
2020/04/20 Python
Python 的 f-string 可以连接字符串与数字的原因解析
2021/02/20 Python
美国最大网上鞋店:Zappos
2016/07/25 全球购物
Linux中如何设置Java环境变量(Ubuntu)
2016/07/24 面试题
电气专业推荐信范文
2013/11/18 职场文书
写给女朋友的道歉信
2014/01/08 职场文书
公司离职证明范本
2014/10/17 职场文书
家长给老师的感谢信
2015/01/20 职场文书
2015年师德师风自我评价范文
2015/03/05 职场文书
推广普通话主题班会
2015/08/17 职场文书
MySQL EXPLAIN输出列的详细解释
2021/05/12 MySQL