【发布时间】:2012-10-17 11:06:30
【问题描述】:
我还是 PHP 新手。我尝试了 Andrew Moore 先生的方法。密码不匹配。我试着玩Andrew Liu's code 以及帖子中的答案。当我尝试 var_dump 时,我没有得到真或假。 我不确定我做错了什么。有人可以告诉我吗?
$bcrypt = new Bcrypt(15);
$username = sanitize($username);
$password = $_POST['password'];
DEFINE('DB_USER', 'root');
DEFINE('DB_PASSWORD', 'password');
DEFINE('DB_HOST', 'localhost');
DEFINE('DB_NAME', 'users');
$dbh = @mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
$check_username = $dbh->prepare("SELECT password FROM user WHERE username= '$username'");
$check_username -> execute(array($username));
while($row = $check_username->fetch(PDO::FETCH_ASSOC)){
$check_password = $row['password'];
$isGood = $bcrypt->verify($password, $check_password);
var_dump($isGood);
}
【问题讨论】:
-
那么你从
var_dump得到什么是? -
我稍后修改了代码。我现在对 var_dump 感到错误。我以明文形式输入密码,并且从数据库中检索到“check_password”的散列版本。我似乎无法得到 $isGood = $bcrypt->verify($password, $check_password);在职的。我正在使用 XAMPP 和 PHP 版本 5.3.8。
-
你确定你得到了正确的记录吗?
var_dump($row)