目录

行动计划

创建用户信息数据库

后面板连线

初始化

确认修改

确认id

判断旧密码是否正确

判断两次输入的新密码是否相同

修改用户数据库中的密码

结尾

效果演示


上一期我们完成了欢迎登录和信息查询的功能,那么我们这一期就来实现一下密码修改。

行动计划

开始密码修改之前,我们老规矩,来制定一下计划。寻常的修改密码需要具备哪几个要素呢

  • 输入自己的账号
  1. 确认用户数据库里存在这个账号
  • 输入自己的旧密码
  1. 需要判断是否正确
  • 输入新密码
  • 再次输入新密码
  1. 需要判断两次输入的新密码是否相同
  • 一个确认修改的按键
  • 一个返回的按键

如下图所示

创建用户信息数据库

计划设计好之后,我们就先来创建一个存储用户信息的数据库吧,总不能把实验室设备的信息和用户的信息放在一个数据库里吧。那么打开我们的Navicat for MySQL,右键左边的空白部分——新建数据库——按下图选择。

然后我们来新建一个表,用这个表来存储我们用户的信息,既然是存储用户信息的肯定是需要有id、密码、姓名等啦。双击我们创建的数据库——右键表——点击新建表——如第二张图。

建立好表之后,我们可以自己先把一个用户的信息输入进去,以便后面测试密码修改的功能。

后面板连线

初始化

老规矩,我们先来初始化一下,我们这次对四个字符串输入控件初始化,一样的是在While循环外面。然后对我们上一期制作的枚举变量编辑一下项,因为我们这一期的功能里多加入了两个按键。不过这次的退出(返回)按键可以不加,和上一期的返回按键整合到一起就可以啦。如下。

确认修改

枚举变量编辑好了之后,我们就可以在条件结构中右击——在后面添加分支,然后就可以在条件结构中看到多了确认修改的部分。不过也别忘了我们的事件结构也需要更新呀。

我们接下来就转到条件结构的确认修改部分

确认id

根据前面制定好的计划,我们首先要完成的就是确认用户数据库里有我们输入的这个id

我们可以把我们输入的id放到数据库中去查询,如果查到了这个id,那么我们输入的这个id就是正确的,如果查询为空的话,那么这个id就是错误的啦。

判断旧密码是否正确

判断旧密码是否正确也是相同的操作,利用我们输入的id去查询这个id匹配的密码,如果查出来和我们输入的旧密码相同,那么就是正确的。如果查出来不相同,那么就是错误的啦。当然,我们还可以多加一个判断,就是判断id不为空,就是说我们输入的id不能为空值。

最后我们用一个复合运算控件,把这三个判断的最终值“与”运算一下 ,这样就可以完成这三个判断都必须正确才能修改密码啦。

最后我们把复合运算的值连接一个条件结构,如果值为假的话,我们可以给用户一点提示啦,并且把我们输入的id等清空。

判断两次输入的新密码是否相同

我们复合运算的值如果为真的话,就可以进入下一步判断啦—— 判断两次输入的新密码是否相同。我们在后面又可以连接一个条件结构,如果不相同,就可以像我们之前的操作一样,给用户一点提示,并且清零一些控件。但是如果为真的话,那我们就可以开始修改用户数据库中的密码啦。

修改用户数据库中的密码

通过前面的一系列判断,我们这里就可以保证输入的所有值都是正确的啦,那我们修改密码的时候就可以直接凭借我们输入的id来确认修改的地方。

我们这里利用MySQL语句update来修改,这个是可以具有更新功能的,也就是可以覆盖之前所有信息,这样就不用我们删除之前的密码啦。

结尾

结尾部分我们就需要这个程序回到默认状态啦,并且我们这里还可以初始化一下,以防数据堆积。

LabVIEW基于机器视觉的实验室设备管理系统(3)的更多相关文章

  1. easyconf——基于AugularJS的配置管理系统开发框架

    目录 1 easyconf的诞生2 easyconf的设计理念 2.1 总体设计 2.2 细节设计 2.2.1 CRUD操作 2.2.2 即时校验 2.2.3 下拉框设计3 easyconf使用指南 ...

  2. 基于ArcEngine的影像数据管理系统研制

    基于ArcEngine的影像数据管理系统研制 如果批处理,速度很慢,效率低. 详情如下: 分成很多小块的影像数据,要达到连续显示的效果,并导入ArcSDE for SQL Server中以方便管理.在 ...

  3. 【课程分享】基于plusgantt的项目管理系统实战开发(Spring3+JDBC+RMI的架构、自己定义工作流)

    基于plusgantt的项目管理系统实战开发(Spring3+JDBC+RMI的架构.自己定义工作流) 课程讲师:张弘 课程分类:Java 适合人群:中级 课时数量:37课时 用到技术:Spring  ...

  4. 基于SSH实现员工管理系统之框架整合篇

    本篇文章来源于:https://blog.csdn.net/zhang_ling_yun/article/details/77803178 以下内容来自慕课网的课程:基于SSH实现员工管理系统之框架整 ...

  5. 原创:XXX公司-基于SAP的库存管理系统解决方案

    XXX公司-基于SAP的库存管理系统 解决方案 版本:V0.3.0 Excel_Cortan 文件状态: [ ] 草稿 [ ] 正式发布 [√] 正在修改 文件标识:   当前版本: V0.3 作 者 ...

  6. 基于UML的毕业设计管理系统的分析与设计

    基于UML的毕业设计管理系统的分析与设计 <本段与标题无关,自行略过 最近各种忙,天气不错,导师心情不错:“我们要写一个关于UML的专著”,一句话:“一个完整的系统贯穿整个UML的知识”:我:“ ...

  7. 11 基于django的图书管理系统 多表

    1.需求 作业需求:1.列出图书列表.出版社列表.作者列表2.点击作者,会列出其出版的图书列表3.点击出版社,会列出旗下图书列表4.可以创建.修改.删除 图书.作者.出版社 踩分点:1.满足需求1,2 ...

  8. 基于S2SH开发病房管理系统的设计与实现 源码

    基于S2SH开发病房管理系统的设计与实现: 开发环境: Windows操作系统 开发工具:Eclipse/MyEclipse+Jdk+Tomcat+MySQL数据库 运行效果图:       此源码经 ...

  9. 基于Web的实验室管理系统技术简要报告

    基于Web的实验室管理系统技术简要报告 Copyright 朱向洋 Sunsea ALL Right Reserved 一.网站架构 该网站使用C#语言,利用SQL Server2008数据库,采用V ...

  10. 基于SSM的健身房管理系统

    基于SSM的健身房管理系统 The project was made in 2020-05-05~2020-05-10 谨以此片博文记录下我的第一个Java小Demo 项目展示 用户登录页 用户注册页 ...

随机推荐

  1. React报错:Module not found: Error: Can't resolve 'react-router-dom'

    解决方案 npm install -S react-router-dom@5 参考链接 https://stackoverflow.com/questions/53914013/failed-to-c ...

  2. error: failed to push some refs to 'https://gitee.com/xxxxxxxxx/xxxxxxxt'

    原因是ReadMe文件不在本地中, 此时我们要执行git pull --rebase origin master命令README.md拉到本地, 任何然后执行git push origin maste ...

  3. 论文解读(MCD)《Maximum Classifier Discrepancy for Unsupervised Domain Adaptation》

    Note:[ wechat:Y466551 | 付费咨询,非诚勿扰 ] 论文信息 论文标题:Maximum Classifier Discrepancy for Unsupervised Domain ...

  4. 开机自动打开termux以及启动termux的服务

    ps:因为我们的服务是安装在平板上面的termux,客户不想维护麻烦,如果平板重启之后还需要手动启动ternux,还要开启命令启动服务,这样比较麻烦,所以研究如下操作 1.安装macroDroid 直 ...

  5. crontab定时任务不执行的一些原因总结

    参考博文地址: https://www.jb51.net/article/154290.htm声明:本文章是在以上地址博文基础上进行整理学习,如有侵权,请联系博主删除,感谢知识共享,一起进步,加油鸭 ...

  6. 手把手教你搭建springbootsecurity+jwt,全面了解

    研究了两周了springbootsecurity+jwt的使用,终于搭起来了,这里跟大家分享下. 首先,不了解jwt的可以提前去查下相关资料,我之前也有讲过,大家可以先看下:  https://www ...

  7. Android 编译介绍

    一.需求 Android的源码非常的庞大,编译Android系统往往会占用我们很长的时间,我们需要了解下Android的编译规则,以期能提高我们的开发效率,达到程序员按时下班的伟大理想. 二.环境 平 ...

  8. AnyLabeling标定及转化成labelmaskID

    一.标定工具 在进行分割任务时,对分割工具进行预研和验证,现在AI辅助标定已经成熟,目标则是利用sam进行辅助标定.调研的三款标定工具情况如下: labelme:可以加载sam,但是在进行辅助标定后, ...

  9. TOP GP 把已经编译的per反编回对应版本的4fd(画面档)

    由于GP5.1,5.2,5.3的genero对应版本画面档开发互不兼容,下面提供各版本之间互转的操作方法: xshell切换到要反编译的per档目录,执行以下命令,就会在同目录下生成对应4fd档资料 ...

  10. 轻松掌握组件启动之MongoDB:快速入门、Linux安装和Docker配置指南

    引言 我们将继续深入研究组件启动专题.在之前的文章中,我们已经详细介绍了Redis的各种配置使用方法,为读者提供了全面的指导.然而,今天我们将转向另一个备受关注的数据库--MongoDB.MongoD ...