jFinal写的修改密码的具体实现
来源:互联网 发布:java常见的接口 编辑:程序博客网 时间:2024/04/29 17:28
登陆者更改自己的密码
其实就分两步,第一验证让他验证oldPassword(旧时密码)对了,才能改密码。
- //修改密码
- function editPwd(){
- var username=$('#loginname').text();//获取用户名
- //console.log(username);
- var oldPwd=$('#oldPwd').val();//旧密码
- var newPwd=$('#newPwd').val();//新密码
- var checkPwd=$('#checkNewPwd').val();//确认密码
- if((oldPwd ==null ||oldPwd =="")||(newPwd ==null ||newPwd =="")||(checkPwd ==null ||checkPwd =="")){
- layer.alert('密码不能为空!',{
- skin:'layui-layer-molv'//样式类名
- ,closeBtn:0
- });
- return;
- }
- // console.log("old="+oldPwd);
- // console.log("new="+newPwd);
- // console.log("checknew="+checkPwd);
- if(newPwd!=checkPwd){
- layer.alert('两次输入的新密码不一致!',{
- skin:'layui-layer-molv'//样式类名
- ,closeBtn:0
- });
- return;
- }
- var check=checkPassword(checkPwd);//这是一个我写好的方法用来判断密码格式是否正确。
- if(check==false){
- layer.alert('密码格式为6-20可带数字、“_”、“.”的字串',{
- skin:'layui-layer-molv'//样式类名
- ,closeBtn:0
- });
- return;
- }
- var strJSON ={"oldPassword":oldPwd,"password":newPwd,"username":username};
- jQuery.ajax({
- url:"./admin/editPassword",
- type:"POST",
- data:strJSON,
- async:false,
- success:function(obj){
- if(obj.state=="0"){
- $('#myModal1').modal('hide');
- layer.alert(obj.msg,{
- skin:'layui-layer-molv'//样式类名
- ,closeBtn:0
- });
- }else{
- errorInfo(obj);//这里也是一个封装好的方法
- }
- },
- error:function(){
- layer.alert('系统错误',{
- skin:'layui-layer-molv'//样式类名
- ,closeBtn:0
- });
- },
- comlete:function(obj){
- if(obj.status==200);
- }
- });
- }
errorInfo()和checkPassword()
- //密码验证
- //只能输入6-20可带数字、“_”、“.”的字串
- function checkPassword(str) {
- var re = /^([a-zA-Z0-9]|[._]){6,19}$/
- if (re.test(str))
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- //用来插入每个需要判断state状态决定是否重新登录的类里面
- function errorInfo(obj){
- if(obj.state == "-1") //需要登录
- {
- layer.alert(obj.msg, {
- skin: 'layui-layer-molv' //样式类名
- ,closeBtn: 0
- ,shift: 4 //动画类型
- });
- }
- layer.alert(obj.msg, {
- skin: 'layui-layer-molv' //样式类名
- ,closeBtn:0
- });
- }
Controller
- //修改密码
- public void editPassword(){
- String username=getPara("username");
- //得到username的一条数据
- List<Admin> list =Admin.dao.queryListByUsername(username);
- String str=String.valueOf(list.get(0));
- int one=str.indexOf("password:");
- int two=str.indexOf(",", one);
- String pwd=str.substring(one+9, two);
- //截取出真实密码(pwd)
- //输入的旧时密码(oldPassword)
- String oldPassword=getPara("oldPassword");
- if(pwd.equals(oldPassword)){
- String password=getPara("password");
- int num = Admin.dao.editStaffPwd(password, username);
- if(num==0){
- this.setAttr("state", "FAILED");
- this.setAttr("msg", "修改密码失败!");
- this.renderJson();
- return;
- }else{
- this.setAttr("state", "0");
- this.setAttr("msg", "修改密码成功!");
- this.renderJson();
- return;
- }
- }else{
- this.setAttr("state", "FAILED");
- this.setAttr("msg", "旧时密码不正确!");
- this.renderJson();
- return;
- }
- }
model
- public List<Admin> queryListByUsername(String username) {
- try{
- String sql="select * from admin where username=? ";
- return dao.find(sql,username);
- }catch(Exception e){
- e.printStackTrace();
- return null;
- }
- }
- public int editStaffPwd(String password, String username){
- // TODO Auto-generated method stub
- try {
- String updatesql = "UPDATE admin set password=? where username=? ";
- int iRet = Db.update(updatesql, password, username);
- if (iRet > 0) {
- return 1;
- } else {
- return 0;
- }
- } catch (Exception ex) {
- ex.printStackTrace();
- return 0;
- }
- }
阅读全文
0 0
- jFinal写的修改密码的具体实现
- jFinal写的修改密码的具体实现
- jFinal写的登录功能的具体实现
- dos或wamp下修改mysql密码的具体方法
- JFinal的getModel实现方式
- JQuery记住用户名和密码的具体实现
- JQuery记住用户名和密码的具体实现
- JQuery记住用户名和密码的具体实现
- android系统外部存储文件写操作的具体实现
- c语言实现的密码回写
- JFinal 如何进行XSS过滤(JFinal 的简单介绍到利用JFinal 的handler实现)
- C#中实现密码的修改
- flask修改密码功能的实现
- C# -- 实现WinForm程序的密码修改
- itext的具体实现
- LocalConnection的具体实现
- String的具体实现
- 堆的具体实现
- FPGA噪声干扰
- 有人对他说:如果连 Python 都学不会,你就不要学编程了
- 采用Clone()方式创建对象
- 请关注我,点击关注!谢谢!
- Python机器学习实战:我的共享单车被谁骑走了?
- jFinal写的修改密码的具体实现
- 栈的应用 ——计算器
- 串的堆分配存储表示
- Docker 安装 RabbitMQ 集群
- liunx常用命令-01
- Locating Restriction Sites
- strong对象,替换 replace,将字符串1转化为字符串2
- 问题解决:DuplicateKeyException: a different object with the same identifier value
- Leetcode 算法设计 第十四周