\n
\n
可以使用以下函数来实现:
\n
<?php
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\'] = “”; }
\n
encoded = “”;
\n
while (list(k,v) = each(data)) {
encoded .= (encoded ? “&” : “”);
encoded .= rawurlencode(k).”=”.rawurlencode(v);
}
\n
fp = fsockopen(url[\'host\'], url[\'port\'] ? url[\'port\'] : 80);
if (!fp) return “Failed to open socket to url[host]“;
\n
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”);
\n
fputs(fp, “encoded\\n”);
\n
line = fgets(fp,1024);
if (!eregi(“^HTTP/1\\.. 200″, line)) return;
\n
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);
\n
return results;
}
?>
————————————————————————————————–
也可以这样
\n
<?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);
?>
\n
作者:铁鹰 来源:CSDN
\n