php阻止页面后退的方法分享
例如:现在有1,2,3。3页。希望用户一开始访问第一页,然后点“下一步”就看到“第二页”,然后在进入“第三页”之前,用户不能
后退。就让1和2作为同一页。留个标记在session里,这样:
1and2.php
代码如下:
<?php
session_start();
if (isset($_GET['p2'])) {
$_SESSION['enteredPage2'] = true;
}
if (isset($_SESSION['enteredPage2'])) {
//输出页面2.在页面2里,包含到页面3的链接如下
echo "This is page 2. <a href=\"3.php\">Page3</a>这时候后退不到P1的~";
} else {
//输出页面1,包含到页面2的链接如下
echo "This is page 1. <a href=\"?p2=\">Page2</a>";
}
?>
下面是3.php,作用是表示用户已经访问完P2了,要再允许用户访问P1
代码如下:
<?php
session_start();
unset($_SESSION['enteredPage2']);
?>
以上例子中,页1和页2都是1and2.php生成的临时页面。当用户的浏览器要读这个地址,你输出页2就是页2,不用担心用户
会回到页1去。这个是浏览器无关的最根本的解决方法。
相关推荐
-
php网页后退不再出现过期
<?php ob_start(); if(function_exists(session_cache_limiter)) { session_cache_limiter("private, must-revalidate"); } session_start() ?>
-
php浏览历史记录的方法
本文实例讲述了php浏览历史记录的方法.分享给大家供大家参考.具体实现方法如下: /** * 商品历史浏览记录 * $data 商品记录信息 */ private function _history($data) { if(!$data || !is_array($data)) { return false; } //判断cookie类里面是否有浏览记录 if($this->_request->getCookie('history')) { $history = unserialize($th
-
PHP实现的memcache环形队列类实例
本文实例讲述了PHP实现的memcache环形队列类.分享给大家供大家参考.具体如下: 这里介绍了PHP实现的memcache环形队列类.没咋学过数据结构,因为业务需要,所以只是硬着头皮模拟的! 参考PHP memcache 队列代码.为使队列随时可入可出,且不受int长度越界危险(单链采取Head自增的话不作处理有越界可能),所以索性改写成环形队列.可能还有BUG,忘见谅! <?php /** * PHP memcache 环形队列类 * 原作者 LKK/lianq.net * 修改 FoxH
-
thinkphp浏览历史功能实现方法
本文实例讲述了thinkphp浏览历史功能实现方法,分享给大家供大家参考.具体实现方法分析如下: 历史浏览功能都是使用了cookie功能记录用户信息放到了本地了,这样我们只要读取存储在cookies中的值就可以了,下面来给大家介绍一个基于thinkphp 实现浏览历史功能例子. 就像浏览器一样,能够记录访问了哪些页面,这样能够减少时间,下面我们实现浏览历史的功能. 1.在你需要记录浏览数据的产品或新闻页面,记录cookie需要保存的信息,例如下面这行代码,把页面ID,产品名称,价格,缩略图,网址
-
用PHP程序实现支持页面后退的两种方法
第一,使用Header方法设置消息头Cache-control QUOTE: header('Cache-control: private, must-revalidate'); //支持页面回跳 第二,使用session_cache_limiter方法 QUOTE: //注意要写在session_start方法之前 session_cache_limiter('private, must-revalidate'); 补充: Cache-Control消息头域说明 Cache-Co
-
PHP实现将浏览历史页面网址保存到cookie的方法
本文实例讲述了PHP实现将浏览历史页面网址保存到cookie的方法.分享给大家供大家参考.具体如下: 将浏览历史页面网址保存到cookie,大致的思路如下面的代码,与实际应用有些差别. 复制代码 代码如下: <?php /******* 说明:cookie只能保存字符串 本实例中,需要保存多个URL(历史访问记录),思路是先将URL数组转为字符串,然后保存,读取时,再循环读取 *******/ //先假设当前URL为:http://localhost/php/?id=1 $id = $_GET
-
php后退一页表单内容保存实现方法
php表单在提交之后再后退,表单的内容默认是被清空的(使用session_start的时候), 解决方法是在session_start() 之后,字符输出之前写上 复制代码 代码如下: header("Cache-control: private"); 网页的缓存是由HTTP消息头中的"Cache-control"来控制的,常见的取值有private.no- cache.max-age.must-revalidate等,默认为private.其作用根据不同的重新浏览
-
php基于双向循环队列实现历史记录的前进后退等功能
本文实例讲述了php基于双向循环队列实现历史记录的前进后退等功能.分享给大家供大家参考.具体如下: 为实现一个记录操作历史的功能 1. 和撤销,反撤销功能类似的一个功能.(实现操作的前进后退) 2. 和discuz论坛登录后查看帖子(可以前进后退查看过的帖子,还有帖子查看历史记录) 3. 逻辑和windows资源管理器地址栏前进后退功能一样. 根据这种需要,实现了一个数据结构.写了一个通用的类,暂叫历史记录类吧. [原理和时钟类似.实例化对象时可以构造长度为N(可以根据需要定长度)个节点的环]
-
php阻止页面后退的方法分享
例如:现在有1,2,3.3页.希望用户一开始访问第一页,然后点"下一步"就看到"第二页",然后在进入"第三页"之前,用户不能后退.就让1和2作为同一页.留个标记在session里,这样:1and2.php 复制代码 代码如下: <?phpsession_start();if (isset($_GET['p2'])) { $_SESSION['enteredPage2'] = true;}if (isset($_SESSION['enter
-
js禁止页面刷新与后退的方法
本文实例讲述了js禁止页面刷新与后退的方法.分享给大家供大家参考.具体实现方法如下: <script language="javascript"> //禁止用F5键 function document.onkeydown() { if ( event.keyCode==116) { event.keyCode = 0; event.cancelBubble = true; return false; } } //禁止右键弹出菜单 function document.onco
-
javascript阻止浏览器后退事件防止误操作清空表单
由于客户大多数是不懂电脑的大菜鸟.所以误操作比较多,有时没有选中文本框,然后不小心按了退格之后,刚刚辛苦填好的表单就什么也后退的没有了.网上查了好多资料,然后整合了一下.分享给大家.也希望酸奶姐姐来看看我的第一篇技术博客.呵呵(别介意我提到了你哦.).废话不多说.上源码. 复制代码 代码如下: $(function(){ //处理键盘事件 禁止后退键(Backspace)密码或单行.多行文本框除外 function banBackSpace(e){ var ev = e || window.ev
-
js控制网页前进和后退的方法
本文实例讲述了js控制网页前进和后退的方法.分享给大家供大家参考.具体实现方法如下: //后退: <input type="button" value="后退" onclick="javascript:history.go(-1);"> //前进: <input type="button" value="前进" onclick="javascript:history.go(1);
-
angular.js + require.js构建模块化单页面应用的方法步骤
前言 本文主要给大家介绍的是关于利用angular.js + require.js构建模块化单页面应用的方法,分享出来供大家参考学习,需要的朋友们下面来一起看看详细的介绍吧. AngularJS描述: angularjs是可以用来构建WEB应用的,WEB应用中的一种端对端的完整解决方案.通过开发者呈现一个更高层次的抽象来简化应用的开发.最适合的就是用它来构建一个CRUD应用,它提供了非常方便的且统一高效的解决方案,其数据绑定.基本模版标识符.表单验证.路由.深度链接.组件重用.依赖注入.以及HT
-
zepto.js中tap事件阻止冒泡的实现方法
本文实例讲述了zepto.js中tap事件阻止冒泡的实现方法.分享给大家供大家参考.具体如下: 最近在弄一个手机版的网站,本来想用jQuery Mobile,但文件太大了,所以用了zepto.js 由于移动网页中使用click事件会有延迟,所以就用上了zepto.js中的tap事件. 使用click事件可以使用stopPropagation来阻止冒泡,但tap使用该方法无效 现在我需要实现这样一个效果:点击a.btn这个按钮,然后显示div.panel,当我点击非div.panel时隐藏div.
-
IOS 禁止缩放页面的实现方法
IOS 禁止缩放页面的实现方法 在ios10前我们能通过设置meta来禁止用户缩放页面: <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" /> 在ios10系统中meta设置失效了: 为了提高Safari中网站的辅助功能,即使网站在视口中设置了user-scalable = no,用户也可以
-
js禁止浏览器页面后退功能的实例(推荐)
实例如下所示: <script> $(function(){ if(window.location.href.indexOf("/login") > -1) { //防止页面后退 history.pushState(null, null, document.URL); window.addEventListener('popstate', function () { history.pushState(null, null, document.URL); }); }
-
使用ajax技术实现txt弹出在页面上的方法
使用ajax技术实现点击按钮,将TXT文本里的内容通过弹出框显示到页面上 /*事件会在页面加载完成后触发.*/ <script> window.onload = function(){ /*获取按钮的id*/ var oBth=document.getElementById('btn'); /*点击按钮触发的函数*// oBth.onclick = function(){ /*打开浏览器*/ var xhr = new XMLHttpRequest(); /*在地址栏输入地址,这里的1txt代
-
Asp.net中阻止页面按钮多次提交的解决办法
问题背景: 手头上的KPI分类评级考核系统,页面的提交按钮是用LinkButton或者Button做的.当大量用户同时在线访问该站点时,应用程序服务器出现CPU占用100%的糟糕状况,页面会卡住不动,用户不明情况连续点击提交按钮重复提交,造成数据库中出现大量的重复数据. 其实,即便服务器没有崩掉,快速频繁点击提交按钮,也会出现重复提交的问题. 尝试过:1)在提交按钮的点击事件里设置提交按钮的Enabled属性 Enabled = false; ,这个属性设置在未拿到新页面前是无效的,问题依然存在
随机推荐
- PHP解析html类库simple_html_dom的转码bug
- nodeJS删除文件方法示例
- SpringMVC上传图片与访问
- 详解Spring Boot加载properties和yml配置文件
- oracle创建表的方法和一些常用命令
- python实现DES加密解密方法实例详解
- Shell脚本中判断输入参数个数的方法
- Android蓝牙开发深入解析
- mysql主从同步复制错误解决一例
- ajax(iframe)无刷新提交表单、上传文件
- Centos6.x服务器配置jdk+tomcat+mysql环境(jsp+mysql)
- c#并行编程示例分享
- Android Fragment中使用SurfaceView切换时闪一下黑屏的解决办法
- PHP+sqlite数据库操作示例(创建/打开/插入/检索)
- Python建立Map写Excel表实例解析
- Python中join函数简单代码示例
- 优雅地使用loading(推荐)
- js操作二进制数据方法
- 详解vue中router-link标签所必备了解的属性
- 基于VSCode调试网页JavaScript代码过程详解