手机
当前位置:查字典教程网 >编程开发 >php教程 >如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
摘要:可以使用以下函数来实现:

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

<?php

functionposttohost($url,$data){

$url=parse_url($url);

if(!$url)return"couldn'tparseurl";

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"Failedtoopensocketto$url[host]";

fputs($fp,sprintf("POST%s%s%sHTTP/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;

}

?>

--------------------------------------------------------------------------------------------------

也可以这样

<?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文件向另一个地址post数据,不用表单和隐藏的变量的】相关文章:

Mac环境下php操作mysql数据库的方法分享

php使用post数组的键值创建同名变量并赋值的方法

php截取指定2个字符之间字符串的方法

解决RHAS3中Apache2的PHP上传文件大小的限制

一个php作的文本留言本的例子(四)

php动态绑定变量的用法

文章推荐系统(二)

Php+SqlServer实现分页显示

PHP中的类型约束介绍

PHP基于MySQL数据库实现对象持久层的方法

精品推荐
分类导航