Php 帐户创建审核步骤-表单验证后

Php 帐户创建审核步骤-表单验证后,php,javascript,forms,validation,Php,Javascript,Forms,Validation,我有一个问题困扰了我很长时间。我正在从事一个项目,该项目有一个绑定到支付网关的表单。此表单经过验证,在用户单击“注册”后生效,信用卡号将自动收费(无需审核) 我正在尝试添加一个中间步骤,该步骤基本上是将要收取的金额和将用于创建帐户的信息的摘要。我在两种方法之间争论: 1) 在创建帐户(并收取信用卡费用)之前,将Post数据过帐到另一个页面,如果所有信息都正确(在用户眼中),用户单击“注册”,然后最终创建帐户-这可能需要重新过帐变量或创建会话变量 2) 使用JavaScript隐藏表单“提交时”,

我有一个问题困扰了我很长时间。我正在从事一个项目,该项目有一个绑定到支付网关的表单。此表单经过验证,在用户单击“注册”后生效,信用卡号将自动收费(无需审核)

我正在尝试添加一个中间步骤,该步骤基本上是将要收取的金额和将用于创建帐户的信息的摘要。我在两种方法之间争论:

1) 在创建帐户(并收取信用卡费用)之前,将Post数据过帐到另一个页面,如果所有信息都正确(在用户眼中),用户单击“注册”,然后最终创建帐户-这可能需要重新过帐变量或创建会话变量

2) 使用JavaScript隐藏表单“提交时”,并使用JavaScript显示最初隐藏的审阅容器,在显示之前,JavaScript将设置隐藏审阅屏幕的html字段,从这里,当用户确认所有信息正确后,将创建帐户/对信用卡收费,我们在没有会话/重新发布变量的情况下完成了这项工作

然而,我注意到很多网站倾向于使用上面提到的方法1。我想知道为什么会这样,第二种方法是解决这个问题的好方法吗


非常感谢您的建议,非常感谢

为什么在不需要javascript时使用它。另一种方法是,您可以在服务器上确认是否有人在未完成过程的情况下退出,并且您有一个日志,记录他们在出现任何问题时所做的事情,另一种方法是,你只知道他们是否已经完成。方法1为开发者提供了更多的可能性,以防止篡改数据,并使其能够在连接失败后“恢复”页面。例如,我建议你不要让他们选择查看信用卡,因为它可能会违反支付网关的TOS,并且您也不符合PCI法规。键入CC num、exp、ccv代码对最终用户来说已经够难的了,他们可能永远不会检查它。。如果他们抄送错误,没什么大不了的,让他们再试一次。我从未打算让用户选择查看信用卡号/CVV等敏感信息。。这不是关于审查信用卡信息。这是关于给用户一个额外的机会来审查他们的卡上要支付的金额以及将用于他们帐户的信息。我认为,处理敏感的业务逻辑,即支付过程中发生的事情,是人们通常喜欢在服务器端做的事。这样,没有人可以读取您的代码,甚至连最小化的Javascript都不能。这可能是方法1更受欢迎的一个原因。