Rumah  >  Artikel  >  php教程  >  从一个php文件向另一个地址post数据

从一个php文件向另一个地址post数据

WBOY
WBOYasal
2016-06-06 19:35:011561semak imbas

从一个php文件向另一个地址post数据 无 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

从一个php文件向另一个地址post数据
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;
}

//  以下是用curl

	$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); 
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn