Home >Backend Development >PHP Tutorial >How to post data from a php file to another address without using forms and hidden variables_PHP Tutorial

How to post data from a php file to another address without using forms and hidden variables_PHP Tutorial

WBOY
WBOYOriginal
2016-07-13 17:27:001009browse

可以使用以下函数来实现:
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 ", $url[path], $url[query] ? "?" : "", $url[query]));
fputs($fp, "Host: $url[host] ");
fputs($fp, "Content-type: application/x-www-form-urlencoded ");
fputs($fp, "Content-length: " . strlen($encoded) . " ");


fputs($fp, "Connection: close ");
fputs($fp, "$encoded ");
$line = fgets($fp,1024);
if (!eregi("^HTTP/1.. 200", $line)) return;
$results = ""; $inheader = 1;
while(!feof($fp)) {
$line = fgets($fp,1024);
if ($inheader && ($line == " " || $line == " ")) {
$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);
?>

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/531911.htmlTechArticle可以使用以下函数来实现: function posttohost($url, $data) { $url = parse_url($url); if (!$url) return couldnt parse url; if (!isset($url[port])) { $url[port] = ; } if (...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn