PasswordHash无法运行php CI

时间:2014-07-25 04:28:32

标签: php passwords password-hash

我按照教程http://dialect.ca/code/ci-simple-login-secure/进行了操作 但是我遇到了密码错误 当我输入密码

M@ndiri%%321 and M@ndiri%%654 

无论如何都改变了我的密码错误.. 如果正则表达式有问题?

如何修复??谢谢

1 个答案:

答案 0 :(得分:1)

根据上面显示的正则表达式,除了字母数字字符外,你不应该有任何东西,但正如你所看到的,你的密码字符串中有一些特殊字符:)

上面的表达式也可以写成/([a-zA-Z0-9]+)/g。或者像这样/([[:alnum:]+])/g

如果您想添加特殊字符,请使用此/([ -~]+)/g。这将允许您使用(英语)字母数字和特殊字符。

如果您想在评论中仅允许使用字母数字和下面提到的特殊字符,请使用此/([a-zA-Z0-9%@#$]+)/g

如何使用PHP上面的模式

$password = "aH8J9%3$%";
if(!preg_match("/^([a-zA-Z0-9%@#$]+)$/", $password)){
    echo "Invalid password!";
}

如何使用JavaScript

var pattern = /^([a-zA-Z0-9%@#$]+)$/g;
var password = document.getElementById("password").value; // aH8J9%3$%
if(!pattern.test(password)){
    alert("Invalid password!");
}