如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
2018-09-07 12:03
可以使用以下函数来实现:
<?php
functionposttohost($url,$data){
$url=parse_url($url);
if(!$url)returncouldntparseurl;
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)returnFailedtoopensocketto$url[host];
fputs($fp,sprintf(POST%s%s%sHTTP/1.0\n,$url[path],$url[query]??:,$url[query]));
fputs($fp,Host:$url[host]\n);
fputs($fp,Content-type:application/x-
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=
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,Data1=blah&Data2=blah);
curl_exec($ch);
curl_close($ch);
?>
上一篇:php微信开发之关键词回复功能
文章标题:如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
文章链接:http://soscw.com/essay/11490.html