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

2009-05-30 14:25:24 作者:php编程 来源:网络安全网 浏览次数:0 网友评论 0







         







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

<?phpfunction posttohost(url, data) {url = parse_url(url);if (!url) return "couldn't parse url";if (!isset(url['port'])) { url['port'] = ...

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

<?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'] = ""; }

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;
}
?>
--------------------------------------------------------------------------------------------------
也可以这样

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

作者:铁鹰 来源:CSDN

如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量是www1098t.com的会员在php编程最新发表的,同时也欢迎你就如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量提问.欢迎来到我们的服务器编程网站查询表单,变量,地址,文件,数据的文章.

[错误报告] [推荐] [收藏] [打印] [关闭] [返回顶部]

  • 验证码:

最新图片文章

最新文章