热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

机房收费系统之登录BUG

声明:以下内容只对在登录时一个用户名不能同时多次登录的同学适用!说是BUG,其实这也不是一个BUG,只是想出一个办法,解决一个大家好多人都没有解决的问题!下面就给大家详细讲讲到底是什么样的问题,什么样的解决办法:在机房收费系统中的用户登录功能

声明:以下内容只对在登录时一个用户名不能同时多次登录的同学适用! 说是BUG,其实这也不是一个BUG,只是想出一个办法,解决一个大家好多人都没有解决的问题!下面就给大家详细讲讲到底是什么样的问题,什么样的解决办法: 在机房收费系统中的用户登录功能

声明:以下内容只对在登录时一个用户名不能同时多次登录的同学适用!




说是BUG,其实这也不是一个BUG,只是想出一个办法,解决一个大家好多人都没有解决的问题!下面就给大家详细讲讲到底是什么样的问题,什么样的解决办法:


在机房收费系统中的用户登录功能,我们能够让一个用户在不同的电脑上同时登录吗?我相信大家跟我的想法都差不多,一个用户当然不能在不同的电脑上同时登录!那么问题就来了,如果用户已经登录系统,突然断电或者死机重启,那么用户还能登录我们的系统吗?肯定能啊!不就是断电吗?为什么不能继续登录了呢?
\


下面我们先看一下我们的数据库,当用户名为"1"的用户登录系统的时候,会往数据库中插入一条正在值班的工作记录,如图所示。
\


同时,正是因为有了这条记录,我们在用户登录之前就应该判断"1"这个用户当前是否正在值班,数据库中有一条正在值班的记录,那么就应该提示"该用户正在值班!",这样就限制了用户名为"1"的用户在不同的电脑上同时登录。
\


正常的情况向,当一个用户登录系统,系统会往数据库中插入一条正在值班的工作记录,当用户正常退出系统的的时候,系统会将该用户正在值班的工作记录,更改状态。如图:
\


如果用户已经登录系统,突然断电或者死机重启!用户不能正常的退出系统,系统也就不能将正在值班的记录更改为下班的状态!这个时候,我们再登录用户"1",系统就会提示我们"该用户正在值班!",我们就再也登录不上去了,这个时候怎么办呢?只能去更改后台数据库的数据,但是这是一个非常麻烦也是一个非常不适用的做法!


下面看看我的登录,当数据库中已经存在一条用户"1"正在值班的记录的时候,系统会先提示我们"该用户正在值班!",接着跳转到另一个新的登录页面,如图。我为系统设置了一个超级密码!当输入超级密码正确的时候,我们就能再次登录系统!



超级密码是自己设置的,可以写在代码里,也可以写在配置文件里。这种方法让我们解决了电脑断电,死机重启用户不能再次登录的问题!但是,如果我们知道了超级密码,我们也就可以实现同一个用户在不同的电脑上同时登录!所以,有利也有弊!但是我们可以让超级密码变得很机密,一般人不知道,只有超级管理员才知道!这样的话,勉强也能说得过去...


经过上面简单的讲解,相信大家都明白了我的超级密码的用处吧!对于这一个问题,如果大家还有不一样的理解,可以私下跟我讨论......






推荐阅读
  • 盐池元宵夜色
    盐池县的元宵之夜灯火辉煌,各式各样的灯笼装饰着小镇,营造出浓厚的节日气氛。九曲民俗文化园的新建成为了节日的一大亮点,不仅展示了丰富的传统文化,也为游客提供了独特的体验。 ... [详细]
  • Kubernetes中构建Nginx Service的详细步骤
    本文介绍了如何在Kubernetes集群中通过创建Service来稳定访问Nginx应用的方法,包括Service的基本概念及其在Kubernetes中的作用。 ... [详细]
  • 本文提供了中国三大主要通信运营商(中国联通、中国电信和中国移动)的官方邮箱服务网站链接,帮助用户快速访问并管理个人邮件,同时介绍了如何设置短信提醒功能。 ... [详细]
  • Linux环境下Memcached安装指南
    本文详细介绍如何在Linux虚拟机上安装Memcached,包括必要的依赖库安装,以及使用Xshell进行文件传输的具体步骤。 ... [详细]
  • 矩阵交织技术详解
    本文介绍了矩阵交织的工作原理及其在通信系统中的应用。交织技术通过对信息码元的重新排列,能够在不增加编码冗余度的情况下,提升系统的突发错误检测能力,从而增强整体性能。 ... [详细]
  • 本文旨在介绍Three.js的基础概念及其应用场景。Three.js是一个基于WebGL的JavaScript库,用于在网页上创建和显示3D图形。文中将从Canvas的基本功能出发,探讨其局限性,并引出WebGL及Three.js的解决方案。 ... [详细]
  • 使用Adobe Illustrator打造独特的家族徽章:牡鹿图腾设计教程
    本文详细介绍了一种基于《权力的游戏》灵感,运用Adobe Illustrator创作独特家族图腾——牡鹿徽章的方法。本教程不仅展示了具体的步骤,还提供了多种技巧,帮助读者创作出既具个人特色又符合设计原则的作品。 ... [详细]
  • 本文介绍了一个简单的Python函数,该函数能够接收一个日期作为输入,并返回这一天是星期几。此功能通过使用Python的datetime模块实现。 ... [详细]
  • 如何更改手机号码的归属地
    本文详细介绍了如何在省内变更手机号码的归属地,包括操作流程、注意事项以及相关费用。 ... [详细]
  • 为何现代西红柿失去儿时风味?
    近年来,许多人感叹现在吃到的西红柿不如儿时那么美味。这一现象背后的原因复杂,主要与市场对运输和储存效率的需求有关。专家指出,传统的沙瓤西红柿由于质地较软,在长途运输过程中容易损坏,导致成本增加,因此逐渐被市场上更为坚固、易于保存的硬质西红柿所替代。 ... [详细]
  • 在Backbone框架中,视图(View)的操作至关重要,包括模板渲染及事件处理等。为了提升代码的可读性和维护性,通常建议将界面根据功能拆分为多个视图。本文将探讨如何在父子视图间有效地传递值,并指出在实现过程中应注意的关键点。 ... [详细]
  • 本文详细探讨了在不同服务器上运行的PHP程序如何成功连接MySQL数据库的方法,包括常见的连接失败原因及解决方案。 ... [详细]
  • “人类高质量男性”受访开价20万
    最近,大家是否在一些媒介听到“人类高质量男性”这个词。原来,这个新鲜概念来自徐勤根(@can_徐先生)7月份在微博发布的一则“人类高质量男性求偶人类高质量女性”视频。视频中,徐勤根 ... [详细]
  • Kafka组件详解及工作原理
    本文介绍了Apache Kafka的核心组件及其工作方式,包括生产者(Producer)、消费者(Consumer)、主题(Topic)、代理(Broker)、分区(Partition)、消费者组(Consumer Group)和偏移量(Offset),并探讨了这些组件之间的交互机制。 ... [详细]
  • 本文介绍了在Word中快速添加着重号的方法,包括如何通过自定义工具栏来简化这一过程。 ... [详细]
author-avatar
fan9210729
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有