为了让页面更为好看一些,我一般会选择bootstrap,写起来虽然看着麻烦,但是我们真正需要的只有中间的内容

 下面是html的内容

  <div id="tbx"">
<div id="xgmm" class="gnq">
<br /><br />
<div style="font-size:10px; color:#999; float:left;margin-left: 12%;">提示:确认修改密码后将跳转到登录页面重新登录</div>
<div style="clear:both"></div>
<br />
<form action="xgmm.php" method="post" class="form-horizontal" role="form"> <div class="form-group"><!--原始密码-->
<label for="firstname" class="col-sm-3 control-label">请输入原始密码</label>
<div class="col-sm-5">
<input type="text" class="form-control" id="ysmm" placeholder="请输入原始密码">
</div>
<span class="col-sm-4 ts" id="ysmmts"></span>
</div>
<div class="form-group"><!--新密码-->
<label for="lastname" class="col-sm-3 control-label">请输入新密码</label>
<div class="col-sm-5">
<input type="text" class="form-control" id="xmm" name="xmm" placeholder="请输入新密码">
</div>
<span class="col-sm-4 ts" id="xmmts"></span>
</div>
<div class="form-group"><!--确认新密码-->
<label for="lastname" class="col-sm-3 control-label">请重新输入新密码</label>
<div class="col-sm-5">
<input type="text" class="form-control" id="qrxmm" name="qrxmm" placeholder="请重新输入新密码">
</div>
<span class="col-sm-4 ts" id="qrxmmts"></span>
</div> <div class="form-group"><!--确认修改按钮-->
<div class="col-sm-offset-2 col-sm-6">
<button id="qrxg" type="submit" class="btn btn-primary">确认修改</button>
</div>
</div> </form>
</div>
</div>

下面是jquery部分 

$("#ysmm").blur(function(){ysmm();});
$("#xmm").keyup(function(){xmm();});
function ysmm(){
var a = true;
var ysmm = $("#ysmm").val(); if(ysmm==""){
$("#ysmmts").html("您输入的原始密码为空!");
a = false;
}
else{
$.ajax({
async:false,
url:"ysmm.php",
data:{ysmm:ysmm},
type:"POST",
dataType:"TEXT",
success:function(data){
if(data.trim()==0)
{
$("#ysmmts").html("");
}
else if(data.trim()==1)
{
$("#ysmmts").html("您输入的原始密码有误!"); a = false;
}
}
})
}
return a; }
function xmm(){
var xmm = $("#xmm").val();
var b = true;
$.ajax({
async:false,
url:"xmm.php",
data:{xmm:xmm},
type:"POST",
dataType:"TEXT",
success:function(data){
//alert(data);
if(data.trim()==0)
{
$("#xmmts").html("您输入的新密码弱爆啦!换一个吧");
b = false;
}
else if(data.trim()==1)
{
$("#xmmts").html("您输入的新密码强度强强强!");
}
else if(data.trim()==2)
{
$("#xmmts").html("您输入的新密码强度强!");
}
else if(data.trim()==3)
{
$("#xmmts").html("您输入的新密码强度中!");
}
else if(data.trim()==4)
{
$("#xmmts").html("您输入的新密码强度中!");
}
else if(data.trim()==5)
{
$("#xmmts").html("您输入的新密码强度弱!");
} } });
return b;
} //修改密码的确认修改按钮的对应事件
$("#qrxg").click(function(){
var qrxmm = $("#qrxmm").val();
var xmm1 = $("#xmm").val();
var ysmm1 = $("#ysmm").val(); if(xmm1 != qrxmm)
{
$("#qrxmmts").html("您输入的新密码不一致!");
return false;
}
if(xmm1=="" && ysmm1=="")
{
$("#ysmmts").html("您输入的原始密码为空!");
$("#xmmts").html("您输入的新密码为空!");
return false;
}
else if(xmm1=="" || ysmm1=="" )
{
if(xmm1=="")
{
$("#xmmts").html("您输入的新密码为空!");
return false;
}
else if(ysmm1=="")
{
$("#ysmmts").html("您输入的原始密码为空!");
return false;
}
}
else if(xmm1==ysmm1)
{ $("#xmmts").html("您输入的新密码与原始密码相同!");
return false;
}
else if(ysmm() && xmm())
{
return true;
}
else
{
return false;
} });

原始密码部分的验证  ysmm.hpp

<?php
session_start();
include("DBDA.class.php");
$db = new DBDA(); if(!empty($_SESSION["uid"]))
{
$num = $_SESSION["uid"];
$sql = "select pwd from login where uid='{$uid}' ";
$res = $db->Query($sql);
} if(!empty($_POST["ysmm"]))
{$ysmm = $_POST["ysmm"];
if($ysmm==$res[0][0])//输入的原始密码与当前登录者的原始密码相同
{
echo 0;
}
else
{
echo 1;
}
}

新密码验证部分 xmm.php

<?php
if(!empty($_POST["xmm"]))
{
$str = $_POST["xmm"];
if(strlen($str)<3)
{echo 0;}
else
{
if(preg_match("/[|*|.|=|+|-|]+/",$str) && preg_match("/[A-Z]+/",$str) && preg_match("/[a-z]+/",$str) && preg_match("/[0-9]+/",$str))
{
echo 1;
}
else if(preg_match("/[A-Z]+/",$str) && preg_match("/[a-z]+/",$str) && preg_match("/[0-9]+/",$str))
{
echo 2;
}
else if(preg_match("/[A-Z]+/",$str) && preg_match("/[0-9]+/",$str))
{
echo 3;
}
else if(preg_match("/[a-z]+/",$str) && preg_match("/[0-9]+/",$str))
{
echo 4;
}
else if(preg_match("/[0-9]+/",$str))
{
echo 5;
}
}
}

这样修改密码部分就可以完成了,新密码验证部分 我用的正则是大写字母 小写字母和数字三部分,这里可以自行修改,有很多地方的密码是可以用标点符号等等

php修改密码的更多相关文章

  1. MVC5 网站开发之六 管理员 2、添加、删除、重置密码、修改密码、列表浏览

    目录 奔跑吧,代码小哥! MVC5网站开发之一 总体概述 MVC5 网站开发之二 创建项目 MVC5 网站开发之三 数据存储层功能实现 MVC5 网站开发之四 业务逻辑层的架构和基本功能 MVC5 网 ...

  2. win7下安装mysql后修改密码

    mysql的安装教程网上很多,此处不过多介绍,个人觉得下面这篇教程是比较好的,一步到位.MySQL 5.7.9 ZIP 免安装版本配置过程_百度经验  http://jingyan.baidu.com ...

  3. linux创建新用户以及修改密码

    1. 使用root账户创建新用户 useradd webuser 2. 修改新增的用户的密码 passwd webuser 这时候会提示你输入新的密码: 注意:不要用su webuser进入该账户修改 ...

  4. ASP.NET MVC5 网站开发实践(二) Member区域 - 用户部分(3)修改资料、修改密码

    在上一篇博客中实现了用户的注销和登录,其实代码里落了点东西,就是用户登录要更新最后一次登录时间和登录IP,这次补上.今天做修改资料和修改密码,TryUpdateModel是新用到的东西. 目录: AS ...

  5. 学用MVC4做网站六后台管理:6.1.3管理员修改密码

    6.1.3修改密码 需要两个action.一个是点击修改密码的链接要显示修改密码的分部视图(对话框形式):另一个是提交的处理action. 1.打开[AdministratorController]添 ...

  6. MySQL5.7 修改密码

    MySQL5.7 修改密码 mysql> update mysql.user set authentication_string = password('新密码') where user='用户 ...

  7. mysql登录不了及修改密码

    安装mariadb,默认是无密码的,但一般是指要设置密码的.在设置密码时出现各种问题,可能还是不太明白其原理. 一下我尝试了两种方法,但都失败了.下面这两个是我尝试的方法: 一.网上最多的方法是 1. ...

  8. 安装在CloudStack时CentOS6.4中安装MySQL通过mysql_secure_installation方式修改密码

    在安装CloudStack时,通过mysql_secure_installation方式修改密码 01 [root@test ~]# /usr/bin/mysql_secure_installatio ...

  9. mysq安装以及修改密码

    安装版MySQL是不能一键安装的,下载下来是压缩包,解压后只要进行相关配置就可以正常使用: 文章主要是记录一下,以防自己忘记: 1.首先在mysql官网--http://dev.mysql.com/d ...

  10. Atitit 修改密码的功能流程设计 attilax总结

    Atitit 修改密码的功能流程设计 attilax总结 1.1. 注意点1 1.2. 设计修改用户密码功能时把用户ID保存在哪里?1 1.3. Ui设计1 1.4. 功能设计源码1 1.5. Agt ...

随机推荐

  1. scala测试框架:scalatest

    api文档:http://tool.oschina.net/apidocs/apidoc?api=scalatest-1.7.2 trait Assertions:http://tool.oschin ...

  2. reduceByKey和groupByKey的区别

    先来看一下在PairRDDFunctions.scala文件中reduceByKey和groupByKey的源码 /** * Merge the values for each key using a ...

  3. 固态硬盘(Solid State Drives)

    固态硬盘(Solid State Drives) 学习了:https://baike.baidu.com/item/%E5%9B%BA%E6%80%81%E7%A1%AC%E7%9B%98/45351 ...

  4. hdu 5284 wyh2000 and a string problem(没有算法,仅仅考思维,字符数组得开20万,不然太小了)

    代码: #include<cstdio> #include<cstring> using namespace std; char s[200000]; int main() { ...

  5. Visual Studio 2015 Update 1 安装到最后 KB3022398 错误解决方法

    最后一步遇到一个错误的确让人心寒 只是我们还是得一步步解决.别去卸载重装.太费时 首先打开 regedit 注冊表,依次进入: 1:HKEY_LOCAL_MACHINE\SOFTWARE\Micros ...

  6. 开发ionic准备之安卓模拟器设置(2)

    发现这个安卓模拟器设置屏幕还不能太大,太大显示不全,然后整个模拟器不能拖动,所以尽量不要设置太大的分辨率 ,如下即可 如果选安卓4.4然后勾选了其他下面的ok还不能点击的话,这下要去sdk manag ...

  7. 正则表达式Pattern ,Matcher

    正则表达式:符合一定规则的表达式 作用:用于专门操作字符串 特点:用于一些特定的符号来表示一些代码的操作,这样就简化代码的书写 学习正则表达式就是要学习一些特殊符号的使用 好处:简化对字符串复杂的操作 ...

  8. ios 不通过import 调用其他控制器的方法

    ios 开发过程中在不通过import 调用其他类的方法 //获取类名 Class controller = NSClassFromString(@"controller"); / ...

  9. Netbeans打开包括中文文件时提示错误

    Netbeans打开包括中文文件时提示错误.在Netbeans里找了半天没找到怎么设置,最后发现要改动Netbeans的配置文件才干解决. 编辑C:\Program Files\NetBeans 8. ...

  10. 【Hadoop基础教程】3、Hadoop之伪分布式环境搭建(转)

    伪分布式模式即单节点集群模式,所有的守护进程都运行在同一台机器上.这种模式下增加了代码调试功能,可以查看内存.HDFS文件系统的输入/输出,以及与其他守护进程交互.以hadoop用户远程登录K-Mas ...