Php 在CURL post之后,我有一个双源
对于我的一个项目,我正在创建一个可供其他人使用的注册表单。为了方便起见,我使用CURL发送数据。基本上,设置如下: 访问者访问registration.php,填写表单并提交。在registration.php中,用户被发送到另一个Web服务器上的handler.php。该文件与RegistrationClass和其他类(MySQL以及用于注册的几个模型)通信。RegistrationClass根据获得的$u POST-data验证注册。该数据返回到handler.php并返回给registration.php 唯一的问题是,每当我提交表单时,都会进行验证/注册,但表单会在registration.php-page上呈现两次。第一张表格(最低的)是提交前的原始表格。第二个是与验证/注册结果相同的表单。我猜这是我必须设置的卷曲选项,但我似乎不知道是哪一个 我正在使用以下代码将用户发送到处理程序页面:Php 在CURL post之后,我有一个双源,php,curl,Php,Curl,对于我的一个项目,我正在创建一个可供其他人使用的注册表单。为了方便起见,我使用CURL发送数据。基本上,设置如下: 访问者访问registration.php,填写表单并提交。在registration.php中,用户被发送到另一个Web服务器上的handler.php。该文件与RegistrationClass和其他类(MySQL以及用于注册的几个模型)通信。RegistrationClass根据获得的$u POST-data验证注册。该数据返回到handler.php并返回给registra
if(isset($_POST["ProcessRegistration"]))
{
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_POST => 1,
CURLOPT_URL => "http://bfransen.devdev.nl/Global/Willem.php",
CURLOPT_POSTFIELDS => http_build_query($_POST)
)
);
curl_exec($ch);
curl_close($ch);
}
在RegistrationClass中,这将返回以下值:
private function PostBack()
{
$ch = curl_init();
$this->_POST["Error"] = $this->ErrorCode;
$this->_POST["ErrorMessage"] = $this->GetError($this->ErrorCode);
$this->_POST["Ack"] = true;
unset($this->_POST["ProcessRegistration"]);
curl_setopt_array($ch, array(
CURLOPT_POST => 1,
CURLOPT_URL => $this->_SuccessURL,
CURLOPT_POSTFIELDS => http_build_query($this->_POST)
)
);
if(!curl_exec($ch))
{
trigger_error(curl_error($ch));
}
curl_close($ch);
}
如果您尝试访问:并尝试使用表单,无论您填写什么,此时都会返回错误。但双重形式将出现
注意,我是荷兰人,所描述的文件名不同(registration.php->registratie.php和handler.php->Willem.php)我看不到任何脚本返回的内容,提交后表单的显示代码是什么?据我所知,
Willem.php
打印出预期结果。为什么要使用CURL和SuccessURL将此数据发送回?顺便说一句,问题已经解决了。我不应该执行curl回发,而只是从我创建的数组返回http\u build\u查询。谢谢你们花时间调查此事。