gpt4 book ai didi

PHP5 - 向导式数据提交

转载 作者:行者123 更新时间:2023-11-29 08:36:24 25 4
gpt4 key购买 nike

我有一个多步骤表单,分布在 4 个单独的页面上 - 换句话说,4 个部分(我选择此方法是因为它太复杂,无法在一页上处理所有字段)。在我的 MySQL DB 中,每个页面上的每个部分都有一个表( step1step2step3step4 )。提交第一页后,我想将我的 Page1 数据插入数据库并让它返回主键,然后我的目标是将其发布到下一页( step2.php )......并且步骤3将遵循相同的过程和步骤4。

数据库中 Step2、Step3 和 Step4 的表都有一个主键 ( reg_id ),它们也是 step1.reg_id 的外键.

我想要一些关于如何:

的建议/建议
  1. 在每个页面提交后将数据发送回我的数据库(我是否将数据发送回同一页面,或者有一个单独的处理器页面来处理该问题?)
  2. 重定向到下一页
  3. 通过 reg_id第 1 步返回到下一步页面

我正在使用简单明了的 PDO 来获取 MySQL 中的数据。我承认我没有太多 PHP 知识来完成此任务,因为我太习惯 ASP.NET Webforms 开发的生命周期,因此我在这里请求您的专业知识。

一如既往地非常感谢!

最佳答案

正如 Karl 在评论中所说,在重定向到下一页之前将表单值保存为 $_SESSION 值是最有意义的。然后,表单处理器访问 $_SESSION 中的值,就像您将它们作为 $_POST 值发送一样。

要详细说明为什么这会更好一点,您必须考虑如果您的用户不只是从第 1 页转到第 2 页...直到最后会发生什么一次完成表格。如果有人中途退出向导怎么办?如果他们需要返回并编辑值(有时需要多次)怎么办?简而言之,如果您的用户的工作流程导致表单不完整或用户在表单页面之间来回移动,那么您最终可能会进行大量不必要的验证并写入数据库。

如果将表单值保存在 session 中,并且仅在用户完成整个多页表单时将它们存储在数据库中,则可以消除这些不必要的数据库写入的可能性。

它还使人们可以轻松地在表单中向后进行编辑,而不会破坏您所指出的有点复杂的验证。前任。假设第 1 页上的值 x 与第 4 页上的值 y 相关。用户一直到达第 5 页,但随后决定返回第 1 页来编辑 x。 Page 1 可以访问 session ,因此可以访问 x 和 y —— 例如,您可以警告他们,如果他们的新 x 值会使 y 无效,或者类似的事情。

关于PHP5 - 向导式数据提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15091301/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com