【发布时间】:2013-04-22 20:47:30
【问题描述】:
PHP 新手,我正试图让我的网站防篡改。如果有人在浏览器地址栏中修改了 url,我想重新加载页面 url。我想到的一种方法是将页面 url 存储在会话变量中,以便在需要时重复使用。
下一页 url 来自基于用户选择的 SQL 查询(可能有几十个),所以我事先不知道该 url 是什么。我想做的是恢复当用户单击链接时传输到服务器的地址(当您将鼠标悬停在链接上时,Firefox 在左下角显示的地址)并将其存储在会话变量中.
这可能吗?如果可以,我该如何用 PHP 恢复它?
【问题讨论】:
-
这听起来很糟糕。
-
如果我正确理解您的问题,该值已存储在 $_SERVER 数组中。
-
Erm... 这不是一种非常复杂的说法:我想将用户重定向回上一页吗? (如果不是:请参阅 Matthews 的回答...)。
-
谢谢大家。我没有很好地解释自己。我想要做的是,如果我在地址栏中有 ?a=b&b=c 并且用户将其更改为 ?x=y&y=z 并按 Enter,我的代码将恢复地址 ?a=b&b=c 从而给出同一页面的无缝显示 - 不会跳转到错误页面,例如“抱歉,但找不到您请求的页面。也许搜索会有所帮助。” @jerry :)
在我看来 $_SERVER 数组包含上次刷新后页面的 url 并且最后一次刷新是由顽皮的用户在修改地址栏后进行的......
标签: php url address-bar tampering