高分求解问题

cgk100 美誉达 CTO  2008-04-21 11:26:40
<?php
$host = 'suppliers.win.mofcom.gov.cn';
$path = '/en/product_list.asp';

$data='goto_page1=12';

doPost($path,$data,$host);
function doPost($uri,$postdata,$host){
$da = fsockopen($host, 80, $errno, $errstr);
if (!$da) {
echo "$errstr ($errno)<br/>\n";
echo $da;
}
else {
$salida ="POST $uri HTTP/1.1\r\n";
$salida.="Host: $host\r\n";
$salida.="User-Agent: PHP Script\r\n";
$salida.="Content-Type: application/x-www-form-urlencoded\r\n";
$salida.="Content-Length: ".strlen($postdata)."\r\n";
$salida.="Connection: close\r\n\r\n";
$salida.=$postdata;
fwrite($da, $salida);
$response='';
while (!feof($da))
{
$response.=fgets($da, 128);
}
echo $response;

}
fclose($da);
}
?>
我这个想自动提交表单,但是我在参数 $data='goto_page1=12'; 这里怎么修改参数,最后返回的都是一个结果,不知道为什么,请大家给看看
...全文
67 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
cgk100 2008-04-21
是goto_page1等于12
回复
laruence 2008-04-21
你没有表述清楚你的问题所在?

如果你要post多个数据,那么最好对要post的数据进行urlencode,并且使用&连接

类似这样, var1=urlencodevalue&var2=urlencodevalue&var3=urlencodevalue
回复
myvicy 2008-04-21
$salida ="POST ".$uri." HTTP/1.1\r\n";
$salida.="Host: ".$host."\r\n";
回复
indeed 2008-04-21
帮楼主顶,up,up,up!
回复
unlive 2008-04-21
你是指 哪儿只得到一个结果?
/en/product_list.asp 么?

$data='goto_page1=12&a=2'
回复
laruence 2008-04-21
我,无语了

根本就不知道楼主想问什么
回复
jlokys 2008-04-21
$data = 'goto_page1=12';

strlen($data);//计算的是字符串的长度,如何果单纯的改动12,字符串的长度不会变化
回复
fxs_2008 2008-04-21
for ($i=1;$i<100;$i++){
$data='goto_page1=’.$i
}
回复
fxs_2008 2008-04-21
$data='Post1=1,Post2=2,'
试试

post多个数据时,用“,”连接
采用变量名=post值,变量名=post值,
回复
unlive 2008-04-21
是goto_page1等于12

返回的什么结果,你确定对面接受的参数名是 goto_page1?或者是参数名搞错了。
回复
相关推荐
发帖
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
帖子事件
创建了帖子
2008-04-21 11:26
社区公告
暂无公告