本文实例讲述了PHP判断密码强度的方法。分享给大家供大家参考,具体如下:
一、php页面
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
$score = 0; if (! empty ( $_GET [ 'value' ])){ //接收的值 $str = $_GET [ 'value' ]; } else { $str = '' ; } if (preg_match( "/[0-9]+/" , $str )) { $score ++; } if (preg_match( "/[0-9]{3,}/" , $str )) { $score ++; } if (preg_match( "/[a-z]+/" , $str )) { $score ++; } if (preg_match( "/[a-z]{3,}/" , $str )) { $score ++; } if (preg_match( "/[A-Z]+/" , $str )) { $score ++; } if (preg_match( "/[A-Z]{3,}/" , $str )) { $score ++; } if (preg_match( "/[_|\-|+|=|*|!|@|#|$|%|^|&|(|)]+/" , $str )) { $score += 2; } if (preg_match( "/[_|\-|+|=|*|!|@|#|$|%|^|&|(|)]{3,}/" , $str )) { $score ++ ; } if ( strlen ( $str ) >= 10) { $score ++; } echo $score ; exit ; |
二、html页面
1
2
3
4
5
6
7
8
9
10
11
12
13
|
< table cellspacing = "0" cellpadding = "0" > < tr > < td >输入密码:</ td > < td colspan = "4" >< input type = "password" value = "" name = "newpwd" onblur = "getPassword();" /> </ tr > < tr > < td >密码强度:</ td > < td id = "idSM1" align = "middle" width = "20%" >< span style = "height:0px; line-height:0px;" > </ span >< span id = "idSMT1" style = "DISPLAY: none" >弱</ span ></ td > < td id = "idSM2" style = "BORDER-LEFT: #fff 1px solid" align = "middle" width = "20%" >< span style = "height:0px; line-height:0px;" > </ span >< span id = "idSMT0" style = "DISPLAY:inline; FONT-WEIGHT: normal; COLOR: #666" >无</ span >< span id = "idSMT2" style = "DISPLAY: none" >中等</ span ></ td > < td id = "idSM3" style = "BORDER-LEFT: #fff 1px solid" align = "middle" width = "20%" >< span style = "height:0px; line-height:0px;" > </ span >< span id = "idSMT3" style = "DISPLAY: none" >强</ span ></ td > < td id = "idSM4" style = "BORDER-LEFT: #fff 1px solid" align = "middle" width = "20%" > < span style = "height:0px; line-height:0px;" > </ span >< span id = "idSMT4" style = "DISPLAY: none" >极好</ span ></ td > </ tr > </ table > |
三、js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
<script> function getPassword(){ var value = $( "input[name='newpwd']" ).attr( 'value' ); $.get( 'index.php?r=account/testpwd' ,{value:value}, function (data){ if (data>=1 && data<=3){ $( '#idSM1' ).attr( 'class' , 'pwdChkCon1' ); //弱 $( '#idSM2' ).attr( 'class' , 'pwdChkCon0' ); $( '#idSM3' ).attr( 'class' , 'pwdChkCon0' ); $( '#idSM4' ).attr( 'class' , 'pwdChkCon0' ); $( '#idSMT1' ).show(); $( '#idSMT0' ).hide(); $( '#idSMT2' ).hide(); $( '#idSMT3' ).hide(); $( '#idSMT4' ).hide(); } else if (data>=4 && data<=6){ //中等 $( '#idSM1' ).attr( 'class' , 'pwdChkCon2' ); $( '#idSM2' ).attr( 'class' , 'pwdChkCon2' ); $( '#idSM3' ).attr( 'class' , 'pwdChkCon0' ); $( '#idSM4' ).attr( 'class' , 'pwdChkCon0' ); $( '#idSMT0' ).hide(); $( '#idSMT1' ).hide(); $( '#idSMT2' ).show(); $( '#idSMT3' ).hide(); $( '#idSMT4' ).hide(); } else if (data>=7 && data<=8){ //强 $( '#idSM1' ).attr( 'class' , 'pwdChkCon3' ); $( '#idSM2' ).attr( 'class' , 'pwdChkCon3' ); $( '#idSM3' ).attr( 'class' , 'pwdChkCon3' ); $( '#idSM4' ).attr( 'class' , 'pwdChkCon0' ); $( '#idSMT0' ).hide(); $( '#idSMT1' ).hide(); $( '#idSMT2' ).hide(); $( '#idSMT3' ).show(); $( '#idSMT4' ).hide(); } else if (data>=9 && data<=10){ //极好 $( '#idSM1' ).attr( 'class' , 'pwdChkCon4' ); $( '#idSM2' ).attr( 'class' , 'pwdChkCon4' ); $( '#idSM3' ).attr( 'class' , 'pwdChkCon4' ); $( '#idSM4' ).attr( 'class' , 'pwdChkCon4' ); $( '#idSMT0' ).hide(); $( '#idSMT1' ).hide(); $( '#idSMT2' ).hide(); $( '#idSMT3' ).hide(); $( '#idSMT4' ).show(); } }); } |
四、css
1
2
3
4
5
6
7
|
<style> .pwdChkCon 0 {BORDER-RIGHT: #bebebe 1px solid ;BORDER-BOTTOM: #bebebe 1px solid ;BACKGROUND-COLOR: #ebebeb ;TEXT-ALIGN: center ;} .pwdChkCon 1 {BORDER-RIGHT: #bb2b2b 1px solid ;BORDER-BOTTOM: #bb2b2b 1px solid ;BACKGROUND-COLOR: #ff4545 ;TEXT-ALIGN: center ;} .pwdChkCon 2 {BORDER-RIGHT: #e9ae10 1px solid ;BORDER-BOTTOM: #e9ae10 1px solid ;BACKGROUND-COLOR: #ffd35e ;TEXT-ALIGN: center ;} .pwdChkCon 3 {BORDER-RIGHT: #267a12 1px solid ;BORDER-BOTTOM: #267a12 1px solid ;BACKGROUND-COLOR: #3abb1c ;TEXT-ALIGN: center ;} .pwdChkCon 4 {BORDER-RIGHT: #267a12 1px solid ;BORDER-BOTTOM: #267a12 1px solid ;BACKGROUND-COLOR: #3abb1c ;TEXT-ALIGN: center ;} </style> |
PS:这里再为大家提供几款相关在线工具供大家参考使用:
在线随机数字/字符串生成工具:
https://tool.zzvips.com/t/randkey/
希望本文所述对大家PHP程序设计有所帮助。