求教fsockopen怎么打开有权限的页面 我想打开一个远程页面获取页面内容但是这个页面设置的有权限,要输入账号和密码我有账号和密码但是不知道怎么打开求教各位大神帮帮忙 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 GET /protected.php HTTP/1.1Host: 127.0.0.1User-Agent: Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8Accept-Language: en-us,en;q=0.5Accept-Encoding: gzip, deflateAccept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7Connection: keep-aliveAuthorization: Basic $PASSWORD把$PASSWORD换成base_encode($username.':'.$password); 把上面的 http请求头用fwrite写到fsock打开的资源句柄就行了。 $getstr = 'adsvrlist?db=imedia_dev'; $domain="10.0.3.129"; $fp = fsockopen($domain, 8081, $errno, $errstr, 30); if(!$fp){ echo "$errstr ($errno)<br>\n"; } else { $tmp = base64_encode("$username:$password"); fputs($fp, "GET $getstr\r\n"); fputs($fp, "HTTP/1.0\r\n"); fputs($fp, "Host: $domain\r\n"); fputs($fp, "Authorization: Basic $tmp\r\n"); fputs($fp, "\r\n"); while(!feof($fp)) { echo fgets($fp, 128); } //fclose ($fp); }我是这样写的还是报401错误 $getstr = 'adsvrlist?db=imedia_dev';要写绝对路径,以/开头的路径 谢谢这样得到的xml是这样的HTTP/1.1 200 OKServer: Adfwebserver 2.0.0(for Magicbrain v2.0)Cache-Control: no-storeContent-Length: 589Content-type: text/xmlConnection: Close<!--?xml version="1.0" encoding="GBK"?--><!--?xml:stylesheet type="text/xsl" href="/tpl/adsvrlist_table.xsl"?--><adf v="1.0.0"><db name="imedia_dev" t="2" svrs="1" adsvrs="1"><ad sid="184"><cfg t="1"><id>872</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg><cfg t="1"><id>873</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg></ad><ad sid="192"><cfg t="0"><id>892</id><svr id="10.0.3.129:3000" v="6.6.609bch"><s>0</s><w>0</w><c>0</c><n>1.00</n><t>1320905706</t></svr><st>0</st><s>0</s><ct>-1</ct><c>0</c><v>1.000000</v></cfg></ad></db></adf><!-- invalid cid/sid param-->这样直接解析xml会报错如果不截取出xml的情况下,还有别的方法能正常处理这段字符串吗谢谢了 <?php$xml = substr($response, strpos($response, "\r\n\r\n") + 4); echo $xml; 如何将两个网站整合在一起 求PHP制作好的东西供学习用 急啊,请教高手,关于齐博地方生活门户系统3.0的安装问题 安装discuz内存出错 不能为read 请求高手指点 大哥帮帮忙!!!!如何从表单中获取数据并查询 PHP延迟执行效果 一个 CMS php 网页模板 安装问题 PHP和3G的問題 PHP如果统计数据库里一个月或者一个礼拜的销售金额 如何像phpmyadmin一样双击编辑离开提交 Ubuntu php 在线预览 doc/pdf ci做一个简单的分页搜索,并显示搜索结果怎么做啊,
GET /protected.php HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (X11; Linux i686; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection: keep-alive
Authorization: Basic $PASSWORD把$PASSWORD换成base_encode($username.':'.$password);
$getstr = 'adsvrlist?db=imedia_dev';
$domain="10.0.3.129";
$fp = fsockopen($domain, 8081, $errno, $errstr, 30);
if(!$fp){
echo "$errstr ($errno)<br>\n";
}
else
{
$tmp = base64_encode("$username:$password");
fputs($fp, "GET $getstr\r\n");
fputs($fp, "HTTP/1.0\r\n");
fputs($fp, "Host: $domain\r\n");
fputs($fp, "Authorization: Basic $tmp\r\n");
fputs($fp, "\r\n");
while(!feof($fp))
{
echo fgets($fp, 128);
}
//fclose ($fp);
}
我是这样写的
还是报401错误
这样得到的xml是这样的HTTP/1.1 200 OK
Server: Adfwebserver 2.0.0(for Magicbrain v2.0)
Cache-Control: no-store
Content-Length: 589
Content-type: text/xml
Connection: Close<!--?xml version="1.0" encoding="GBK"?-->
<!--?xml:stylesheet type="text/xsl" href="/tpl/adsvrlist_table.xsl"?-->
<adf v="1.0.0"><db name="imedia_dev" t="2" svrs="1" adsvrs="1"><ad sid="184"><cfg t="1"><id>872</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg><cfg t="1"><id>873</id><st>-1</st><s>0</s><ct>-1</ct><c>0</c><v>0.000000</v></cfg></ad><ad sid="192"><cfg t="0"><id>892</id><svr id="10.0.3.129:3000" v="6.6.609bch"><s>0</s><w>0</w><c>0</c><n>1.00</n><t>1320905706</t></svr><st>0</st><s>0</s><ct>-1</ct><c>0</c><v>1.000000</v></cfg></ad></db></adf><!-- invalid cid/sid param-->这样直接解析xml会报错
如果不截取出xml的情况下,还有别的方法能正常处理这段字符串吗
谢谢了
<?php
$xml = substr($response, strpos($response, "\r\n\r\n") + 4);
echo $xml;