使用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 相关文章推荐
php 用sock技术发送邮件的函数
Jul 21 PHP
PHP在字符串中查找指定字符串并删除的代码
Oct 02 PHP
php 不同编码下的字符串长度区分
Sep 26 PHP
PHP获取表单textarea数据中的换行问题
Sep 10 PHP
PHPnow安装服务[apache_pn]失败的问题的解决方法
Sep 10 PHP
php类中的各种拦截器用法分析
Nov 03 PHP
php中Ctype函数用法详解
Dec 09 PHP
php语言中使用json的技巧及json的实现代码详解
Oct 27 PHP
中高级PHP程序员应该掌握哪些技术?
Sep 23 PHP
php生成毫秒时间戳的实例讲解
Sep 22 PHP
PHP使用PDO、mysqli扩展实现与数据库交互操作详解
Jul 20 PHP
基于laravel where的高级使用方法
Oct 10 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
JavaScript实现滚动栏效果的方法
2015/04/27 PHP
使用ucenter实现多站点同步登录的讲解
2019/03/21 PHP
php中对象引用和复制实例分析
2019/08/14 PHP
jquery实现弹出窗口效果的实例代码
2013/11/28 Javascript
简单的代码实现jquery定时器
2014/01/03 Javascript
jQuery中empty()方法用法实例
2015/01/16 Javascript
jquery实现九宫格大转盘抽奖
2015/11/13 Javascript
jQuery 1.9.1源码分析系列(十四)之常用jQuery工具
2015/12/02 Javascript
bootstrap fileinput完整实例分享
2016/11/08 Javascript
Angularjs使用指令做表单校验的方法
2017/03/31 Javascript
Angular2中如何使用ngx-translate进行国际化
2017/05/21 Javascript
js嵌套的数组扁平化:将多维数组变成一维数组以及push()与concat()区别的讲解
2019/01/19 Javascript
JavaScript实现Excel表格效果
2020/02/07 Javascript
[46:00]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#4EG VS Fnatic第一局
2016/03/03 DOTA
[00:52]玛尔斯技能全介绍
2019/03/06 DOTA
python 随机数生成的代码的详细分析
2011/05/15 Python
Python中实现从目录中过滤出指定文件类型的文件
2015/02/02 Python
python 列表降维的实例讲解
2018/06/28 Python
Pytorch中index_select() 函数的实现理解
2019/11/19 Python
Django启动时找不到mysqlclient问题解决方案
2020/11/11 Python
appium+python自动化配置(adk、jdk、node.js)
2020/11/17 Python
HTML5 和小程序实现拍照图片旋转、压缩和上传功能
2018/10/08 HTML / CSS
HTML5 Canvas的性能提高技巧经验分享
2013/07/02 HTML / CSS
夏洛特和乔治婴儿和儿童时装精品店:Charlotte and George
2018/06/06 全球购物
Hotels.com加拿大:领先的在线住宿网站
2018/10/05 全球购物
最好的商品表达自己:Cafepress
2019/09/04 全球购物
火山咖啡:Volcanica Coffee
2019/10/29 全球购物
澳大利亚在线划船、露营和钓鱼商店:BCF Australia
2020/03/22 全球购物
房地产促销活动方案
2014/03/01 职场文书
环境工程专业自荐信范文
2014/06/24 职场文书
房产转让协议书(2014版)
2014/09/30 职场文书
企业2014年度工作总结
2014/12/10 职场文书
2016年父亲节寄语
2015/12/04 职场文书
安全学习心得体会范文
2016/01/18 职场文书
工作总结之小学教师体育工作范文(3篇)
2019/10/07 职场文书
python设置 matplotlib 正确显示中文的四种方式
2021/05/10 Python