我迷失在表格控制中,我觉得我让它变得比它需要的复杂得多,希望有人可以帮助我?
我有一个简单的"查看产品"页面上有一个用于创建评论的按钮,按钮链接是动态创建的,例如:
"newreview.php?productid=1"
当我点击此按钮时,我的 newreview 页面会通过$ _GET收到productid。然后,用户输入我回发到同一 newreview 页面的审核详细信息,以进行验证和处理。要保留productid(因为表单现在是POST,我使用隐藏字段)。
所以我现在通过$ _POST回复审核细节和productid,这很好。
但是,用户必须登录才能发布评论,因此在新视图页面的开头,我会检查用户是否已登录,如果没有将当前页面存储在会话中(' REQUEST_URI'存储在最后一页中)并指向登录页面。
如果在登录会话后有 lastpage 元素,我会将用户重定向回上一页。
如果用户在首次提交评论时未登录或会话已过期,则 lastpage 会话字段包含URI参数(作为$ _GET),因此效果正常。
但如果会话在用户撰写评论时到期,我该怎么办?当他们点击提交并且页面被回发时,会话已过期,因此他们被重定向到登录页面,但是当它试图返回所有信息时(包括批判性地,productid已经消失)?
答案 0 :(得分:0)
也许尝试将$ _POST内容存储在cookie中,然后您可以检查cookie是否存在以及用户是否从登录重定向回来。抓取Cookie内容,然后进行提交。
将发布的数据存储在会话变量中以保存数据的往返。用户登录时处于提交状态,因此也应该易于存储,当用户返回审阅页面时自动触发提交完成。