请问php怎么模拟登陆?????? 楼上说的是:fsockopen();吗?那怎么用啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 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 $line ; $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; } $data=array(); $data["msg"]="HELLO THIS IS TEST MSG"; $data["Type"]="TEXT"; echo posttohost("Http://url/xxx", $data); to:xuzuning(唠叨) 不好意思,我看了半天没看懂.我的本意是想用php读取论坛登陆后才可以看到的内容(就是说有权限的,不登陆看不到),可能我的表达能力不行.不好意思啊 我的email是:[email protected]非常感谢:) xuzuning(唠叨) 的那段代码比这个问题有价值多了:) PHP能用sprintf函数来防止SQL注入吗? 请教discuz模板类循环嵌套问题 [急]PHP如何获取上传文件临时目录? createdocument里面如何添加onclick事件 为什么不能把存放在数据库的SESSION 给destroy?有代码 phpadmin执行sql语言时间如何改变? php+java不明白的地方?盼高手...... *.htc这是什么文件? 防止刷新重复提交的两种方法 一个关于用header返回地址的问题 eregi无法匹配出字符串!!!! 帮一家企业做了一个聊天室。。散分
{
$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 $line ; $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;
}
$data=array();
$data["msg"]="HELLO THIS IS TEST MSG";
$data["Type"]="TEXT";
echo posttohost("Http://url/xxx", $data);
不好意思,我看了半天没看懂.我的本意是想用php读取论坛登陆后才可以看到的内容(就是说有权限的,不登陆看不到),可能我的表达能力不行.不好意思啊