PHP如何防止一个页面。被同时打开呢
Jun 13, 2016 am 10:26 AM
lock
php
quot
user
PHP怎么防止一个页面。。被同时打开呢
PHP怎么防止一个页面。。被同时打开呢。。。。有什么办法实现呢。。。JS也行。。谢谢了
------解决方案--------------------
把以下代码加在程序开始处
- PHP code
$fn = __FILE__ . 'lock';if( file_exists($fn) ) exit('拒绝访问');file_put_contents($fp, '');ob_start( 'unlock' );function unlock( $buffer ) { global $fn; unlink($fn); return $buffer;}<br><font color="#e78608">------解决方案--------------------</font><br>嗯,不能依靠session控制,是可欺诈的。<br>只能依靠服务端保证唯一打开了,flock文件锁就可以了.<br><br>
登录后复制
- PHP code
<?php $fp = @fopen("lock.file", "c");$ret = flock($fp, LOCK_EX | LOCK_NB);if ($ret) { echo "after flock, before sleep" . PHP_EOL; sleep(5); flock($fp, LOCK_UN);} else { echo "can't obtain the file lock" . PHP_EOL;}?><br><font color="#e78608">------解决方案--------------------</font><br>楼主可能是在做管理系统,因为一些管理系统会有特别的要求或者是担心同时插入的问题。<br>用数据库吧,核心是<br>IP(或用户ID)和当前打开页面的路径要关联,就像一个联合主键一样。<br>openUser openPage<br>1 index.php<br>2 modules/user/user_list.php<br>3 modules/user/user_list.php//这是错误的,因为User 1已经打开了“modules/user/user_list.php”页面。<br><font color="#e78608">------解决方案--------------------</font><br>嗯,我就是担心他想要一个人<strong>已经</strong>"打开"的情况下,还不让别人"打开".....<br><br><br><br>
登录后复制
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前
By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验?
3 周前
By 王林

热门文章
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前
By 尊渡假赌尊渡假赌尊渡假赌
仓库:如何复兴队友
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前
By 尊渡假赌尊渡假赌尊渡假赌
击败分裂小说需要多长时间?
3 周前
By DDD
公众号网页更新缓存难题:如何避免版本更新后旧缓存影响用户体验?
3 周前
By 王林

热门文章标签

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南

如何设置 Visual Studio Code (VS Code) 进行 PHP 开发
