欢迎光临
我们一直在努力

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

建站超值云服务器,限时71元/月

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

function posttohost($url, $data) {

$url = parse_url($url);

if (!$url) return "couldnt 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;

}

?>

也可以这样

$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);

?>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量-PHP教程,PHP应用
分享到: 更多 (0)