我将注册表单分为 3 个单独的 php 页面作为第 1 步、第 2 步和第 3 步。我想知道如何临时存储第 1 页和第 2 页的表单数据,直到用户到达第 3 步然后检索并发送数据当用户在完成第 3 个表单后单击第 3 页上的提交时,所有 3 个表单一次一起发送到数据库。
我应该使用 cookie 和/或会话和数据库进行临时存储吗?我看到有人建议使用隐藏的 html 输入,但我不明白。
谢谢。
大多数时候,隐藏输入就可以了。
用法:例如,用户在第 2 步中发布了“name=David”。您的服务器收到了该表单数据,应将此行插入第 3 步:
<input type="hidden" name="name" value="David">
当用户完成第 3 步后,您的服务器将再次收到“name=David”,这样您就可以将所有数据作为一个整体来处理,而无需在服务器上存储任何数据。
如果没有第 3 步,第 1 步和第 2 步中的数据无用,请执行此操作。
您可以使用 PHP 将输入数据变量存储到会话变量中$_session
最好将其保存在会话/cookie 中。请务必在提交后将其删除,否则每次用户访问该页面时,都将填充旧数据。他们所说的隐藏输入的意思是,在每一步,您的页面都将检索从上一页保存的数据,然后将它们隐藏在页面上<input type="hidden" name="firstname" value="<?= $_POST['firstname']; ?>" />....