0

我有一个这样的页面:

<form action method="POST">
   <input type="hidden" name="rand" value="casualnumbers">
   <input type="submit" value="Submit">
</form>

我需要获取结果页面,使用 CURL 将“rand”值作为 POST 变量发送。

我知道如何使用以下方法发送 POST 变量:

CURLOPT_POSTFIELDS => array("rand" => "casualnumbers")

但是如何从表单页面获取“casualnumbers”?

页面生成一个随机值,post请求只有在它获得正确的随机值时才有效,所以我需要从页面中获取随机值并立即发送带有正确随机值的post请求

4

1 回答 1

0

这就是我使用的:

 preg_match_all('/<input.*type="(submit|hidden)".*name="([^"]+)".*value="([^"]*)".*>/u',$form_html,$vars);
$post_vars=array();
for($i=0;$i<count($vars[2]);$i++)
    $post_vars[$vars[2][$i]]=$vars[3][$i];
curl_setopt($curl,CURLOPT_POST, true);
curl_setopt($curl,CURLOPT_POSTFIELDS,$post_vars);

希望能帮助到你。

于 2013-10-07T12:26:12.280 回答