【发布时间】:2011-06-03 02:45:24
【问题描述】:
在尝试使用 curl 将数据发布到页面并在提交表单后检索结果时需要帮助。
我创建了一个简单的表单:
<form name="test" method="post" action="form.php">
<input type="text" name="name" size="40" />
<input type="text" name="comment" size="40" />
<input type="submit" value="submit" />
</form>
另外,我有 php 代码在同一页面中处理此表单。它所做的只是回显表单值。
我一直在使用的卷曲是这样的:
$h = curl_init();
curl_setopt($h, CURLOPT_URL, "path/to/form.php");
curl_setopt($h, CURLOPT_POST, true);
curl_setopt($h, CURLOPT_POSTFIELDS, array(
'name' => 'yes',
'comment' => 'no'
));
curl_setopt($h, CURLOPT_HEADER, false);
curl_setopt($h, CURLOPT_RETURNTRANSFER, 1);
$result = curl_exec($h);
echo $result;
当我启动包含 curl 代码的页面时,我得到了 form.php 页面内容,但它没有显示 提交表单时 PHP 应该回显的变量。
希望有任何帮助。
谢谢。
【问题讨论】:
-
我们能看到处理表单提交的 PHP 吗?问题可能就在那里。
-
另外,您是否验证过手动提交表单会产生所需的输出?
-
手动提交表单会产生正确的输出。处理表单的 PHP 是: if(isset($_POST['submitted'])){echo $_POST[name] ..... etc. 就是这样