php实现禁止浏览器后退的方法:1、混合运用客户端脚本和服务器端脚本;2、在头部加【<meta>】标签,代码为【<META HTTP-EQUIV="expires" CONTENT="0">】。
【相关学习推荐:php图文教程】
php实现禁止浏览器后退的方法:
流程
1.php
<?php header("Cache-control:no-cache,no-store,must-revalidate"); header("Pragma:no-cache"); header("Expires:0"); if($_COOKIE['resetpw_success_v']){ //echo '密码已更改';exit(); header("Location: ****"); } ......... ?>
2.php 例:密码修改最后一步修改成功时,如果点击浏览器后退到1.php
<?php setcookie('resetpw_success_v','true',time()+600); .......... ?>
曾经有许多人问起,“怎样才能‘禁用’浏览器的后退按钮?使后退页面失效”,或者“怎样才能防止用户点击后退按钮返回以前浏览过的页面?”在找到的许多方案中,其中有一种建议禁止页面缓存。但都说得很片面,只能禁止IE,像Chrome浏览器就无能为力了,下面是一篇比较全面禁用所有浏览器缓存的文章,对提交表单后不让客户返回提交页面,防止重复提交表单,防止用户后退非常有用
由于不存在能够完全禁用后退按钮的方法,所以最好的方案应该是:混合运用客户端脚本和服务器端脚本。
最简单的方法是在头部加<meta>
标签
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache,no-store, must-revalidate"> <META HTTP-EQUIV="pragma" CONTENT="no-cache"> <META HTTP-EQUIV="expires" CONTENT="0">
如果使用上面的方法强制浏览器不再缓存web页面,必须注意以下几点:
只有在使用安全连接时“pragma: no-cache”才防止浏览器缓存页面。
对于不受安全保护的页面,“pragma: no-cache”被视为与“expires: -1”相同,此时浏览器仍旧缓存页面,但把页面标记为立即过期。
在ie 4或5中,cache-control”meta http-equiv标记将被忽略,不起作用。在实际应用中我们可以加上所有这些代码。
然而,由于这种方法不能适用于所有的浏览器,所以是不推荐使用的。但如果是在intranet环境下,管理员可以控制用户使用哪种浏览器,我想还是有人会使用这种方法。
相关学习推荐:php编程(视频)