我做了一些关于这个主题的研究,有些专家说过这是不可能的,所以我想问一个替代解决方案.
我的情况:
页面A:[checkout.php]客户填写其结算明细.
页面B:[process.php]生成发票编号并将客户详细信息存储在数据库中.
页面C:[thirdparty.com]第三个支付网关(仅接受发布数据).
客户填写他们的详细信息并在页面A中设置他们的购物车,然后POST到页面B.在process.php内部,将POSTed数据存储在数据库中并生成发票编号.之后,将客户数据和发票号码发布到thirdparty.com支付网关.问题是在页面B中进行POST .cURL能够将数据发布到页面C,但问题是页面没有重定向到页面C.客户需要在页面C上填写信用卡详细信息.
第三方支付网关确实给了我们API样本,样本是POST发票号和客户详细信息.我们不希望系统生成多余的不需要的发票号.
这有什么解决方案吗?我们当前的解决方案是让客户填写页面A中的详细信息,然后在页面B中创建另一个页面,显示其中的所有客户详细信息,用户可以单击确认按钮POST到页面C.
我们的目标是让客户只需点击一次.
希望我的问题很明确:)
我正在使用PHP,我正在创建一个表单发布到的操作页面.页面检查错误,然后如果一切正常,它会将它们重定向到已发布数据的页面.如果没有,我需要将它们重定向回到它们所处的页面,并显示错误和POST变量.以下是它如何运作的要点.
HTML看起来像这样......
<form name="example" action="action.php" method="POST">
<input type="text" name="one">
<input type="text" name="two">
<input type="text" name="three">
<input type="submit" value="Submit!">
</form>
Run Code Online (Sandbox Code Playgroud)
action.php看起来像这样......
if(error_check($_POST['one']) == true){
header('Location: form.php');
// Here is where I need the data to POST back to the form page.
} else {
// function to insert data into database
header('Location: posted.php');
}
Run Code Online (Sandbox Code Playgroud)
如果出现错误,我需要将其POST回第一页.我不能使用GET,因为输入太大了.如果可能的话,我不想使用SESSION.这可能吗?