问个小问题。
我有一个表单,它捕获一些数据,验证它,然后发布到同一站点的另一个页面。如果没有错误,我使用header()来重定向,但显然数据没有在post中发送。
使用会话在两个页面之间持久化数据是正确的吗?
谢谢。
如果您只需要第二页的数据,并且数据不敏感,那么您不妨在header()中传递数据。
$url = "www.example.com?variable=value&id=something";
I.e. header('Location: $url');
这些类型的"flash消息"是很好的,并且是防止用户能够重新加载页面并重新提交表单的好方法,如果你担心的话。我会提醒您在显示消息后取消会话变量的设置。
是的,这是正确的方法。
然而,根据不同的情况,也有其他的选择,如隐藏变量,iframe等。如果你能解释一下整个情况,根据数据的性质,我可以给你更精确的答案。
您可以将数据存储在服务器端(Session)或客户端(Cookie)。选择哪种方式取决于数据类型和安全问题。
也可以通过PHP直接在新表单中插入发布的数据而不保存它-但如果您通过header
是的,你可以这样做,但为了更安全,在db中添加额外的DUMMY字段或其他东西。通过这个,如果你需要丢弃,你可以丢弃虚拟记录。但是你需要有时间戳,这样你就不会删除那些最近添加的和正在处理的记录。
您还可以创建cron作业来清空表