0

如果页面中有 2 个表单域,有 2 个不同的提交按钮,我如何告诉 cURL 提交哪个表单?

例子

<form method="post" action="index.php">
   <input type="text" name="age">
   <input type="submit" name="agree">
   <input type="submit" name="disagree">
</form>

到目前为止我的代码

//create array of data to be posted
$post_data['age'] = '5';
 
//traverse array and prepare data for posting (key1=value1)
foreach ( $post_data as $key => $value) {
    $post_items[] = $key . '=' . $value;
}

$post_string = implode ('&', $post_items);

curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_string);
4

2 回答 2

1

您可以将数组传递给CURLOPT_POSTFIELDS并让 php 的 curl 扩展完成编码等脏活。

这样可以避免对字符串进行编码!

curl_setopt($curl_connection, CURLOPT_POSTFIELDS, $post_data);

于 2013-04-03T00:27:49.000 回答
1

无需知道必须发布 HTML 中的哪个表单。

形式可以由方法、操作和/或字段集确定。

PS Clicked 命名提交也正在发送。所以添加post_data['agree'] = '';.

PPS 不要将其用于垃圾邮件。

于 2013-04-03T00:31:14.693 回答