在我的应用中,我有一些可以从应用中的不同网址访问的表单。每个表单都有一个取消按钮,该按钮应该从用户以前来自的URL返回。
因此,使用$ _SERVER ['HTTP_REFERER']很容易实现。
当用户提交表单时问题就出现了,验证失败了。那么,那时,$ _SERVER ['HTTP_REFERER']就是表单本身。显然,取消按钮不会正常工作,因为原来的引用者现在已“丢失”。
最好的方法是什么?我应该在会话中存储原始引用者,还是通过隐藏的表单字段存储?或许还有另一种更优雅的方法?
答案 0 :(得分:1)
尽管有多个标签/窗口,但始终保证用户返回同一位置的最佳方法是将返回URL作为GET参数传递。
答案 1 :(得分:1)
您不应使用引荐来源,使用其他方法。也许可以使用“上次访问过的页面”自行设置一些会话变量,或者使用隐藏字段来保存后页网址。
答案 2 :(得分:0)
您可以非常轻松地将其另存为Cookie http://php.net/manual/en/function.setcookie.php
使用url编码并将其传递给查询字符串或发布数据是另一种方式,但是你必须跟踪它。