如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的


Posted in PHP onMarch 06, 2007

可以使用以下函数来实现: 

<?php
function posttohost($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.0\n", $url['path'], $url['query'] ? "?" : "", $url['query']));
fputs($fp, "Host: $url[host]\n");
fputs($fp, "Content-type: application/x-www-form-urlencoded\n");
fputs($fp, "Content-length: " . strlen($encoded) . "\n");
fputs($fp, "Connection: close\n\n"); 

fputs($fp, "$encoded\n"); 

$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 == "\r\n")) {
$inheader = 0;
}
elseif (!$inheader) {
$results .= $line;
}
}
fclose($fp); 

return $results;
}
?>
--------------------------------------------------------------------------------------------------
也可以这样 

<?php
$URL="www.mysite.com/test.php";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,"https://$URL");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, "Data1=blah&Data2=blah");
curl_exec ($ch);
curl_close ($ch);
?>

PHP 相关文章推荐
在线短消息收发的程序,不用数据库
Oct 09 PHP
使用sockets:从新闻组中获取文章(二)
Oct 09 PHP
fleaphp crud操作之find函数的使用方法
Apr 23 PHP
php数组函数序列之array_unshift() 在数组开头插入一个或多个元素
Nov 07 PHP
php实现查询百度google收录情况(示例代码)
Aug 02 PHP
php中调用其他系统http接口的方法说明
Feb 28 PHP
PHP循环输出指定目录下的所有文件和文件夹路径例子(简单实用)
May 10 PHP
PHP使用CURL实现对带有验证码的网站进行模拟登录的方法
Jul 23 PHP
解决php表单重复提交实现方法
Sep 29 PHP
win10环境PHP 7 安装配置【教程】
May 09 PHP
php通过两层过滤获取留言内容的方法
Jul 11 PHP
php实现生成带二维码图片并强制下载功能
Feb 24 PHP
收集的php编写大型网站问题集
Mar 06 #PHP
用PHP实现Ftp用户的在线管理的代码
Mar 06 #PHP
个人站长制做网页常用的php代码
Mar 03 #PHP
NOD32 v2.70.32 简体中文封装版 提供下载了
Feb 27 #PHP
给php新手谈谈我的学习心得
Feb 25 #PHP
Smarty+QUICKFORM小小演示
Feb 25 #PHP
php简单封装了一些常用JS操作
Feb 25 #PHP
You might like
自己在做项目过程中学到的PHP知识收集
2012/08/20 PHP
php简单统计字符串单词数量的方法
2015/06/19 PHP
什么是PHP文件?如何打开PHP文件?
2017/06/27 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
Laravel+Intervention实现上传图片功能示例
2019/07/09 PHP
jQuery-ui引入后Vs2008的无智能提示问题解决方法
2014/02/10 Javascript
javascript实现des解密加密全过程
2014/04/03 Javascript
基于NodeJS的前后端分离的思考与实践(四)安全问题解决方案
2014/09/26 NodeJs
js使用心得分享
2015/01/13 Javascript
jQuery实现弹幕效果
2017/02/17 Javascript
JS解决移动web开发手机输入框弹出的问题
2017/03/31 Javascript
ES6新特性四:变量的解构赋值实例
2017/04/21 Javascript
js实现上传并压缩图片效果
2018/01/10 Javascript
node.js中fs文件系统模块的使用方法实例详解
2020/02/13 Javascript
一张图带我们入门Python基础教程
2017/02/05 Python
python3.6 实现AES加密的示例(pyCryptodome)
2018/01/10 Python
利用Anaconda简单安装scrapy框架的方法
2018/06/13 Python
Djang的model创建的字段和参数详解
2019/07/27 Python
Python semaphore evevt生产者消费者模型原理解析
2020/03/18 Python
PyQt5 如何让界面和逻辑分离的方法
2020/03/24 Python
解决Python Matplotlib绘图数据点位置错乱问题
2020/05/16 Python
在django中form的label和verbose name的区别说明
2020/05/20 Python
django创建css文件夹的具体方法
2020/07/31 Python
详解查看Python解释器路径的两种方式
2020/10/15 Python
俄罗斯金苹果网上化妆品和香水商店:Goldapple
2019/12/01 全球购物
乡镇总工会学雷锋活动总结
2014/03/01 职场文书
授权委托书格式模板
2014/04/03 职场文书
白血病捐款倡议书
2014/05/14 职场文书
大专生求职信
2014/06/29 职场文书
无财产离婚协议书范本
2014/10/28 职场文书
2015年小学体育工作总结
2015/05/22 职场文书
红色经典观后感
2015/06/18 职场文书
小学五年级班主任工作经验交流材料
2015/11/02 职场文书
Python实现生成bmp图像的方法
2021/06/13 Python
攻击最高的10只幽灵系神奇宝贝,坚盾剑怪排第一,第五最为可怕
2022/03/18 日漫
golang的文件创建及读写操作
2022/04/14 Golang