password_hash仍散列并存储未定义的变量

问题描述 投票:0回答:1

我有一个脚本,该脚本已成功写入PHPmyadmin并保存了数据库字段。但是,当我更改变量名$ password1或$ password9或$ password34并保存脚本时,该脚本仍然有效,并且将在DB中出现一个新条目,其中所有字段均已填写,包括password字段。

$password0 = trim($_POST['password1']);
$hashed_passcode = password_hash($password4, PASSWORD_DEFAULT);
mysqli_stmt_bind_param($q, 'ssss', $first_name, $last_name, $email, $hashed_passcode);

上面是一个示例,其中我将变量更改为$ password0。当我将其哈希时,变量是$ password4。我重新提交了表格,它仍然有效。怎么可能?

php password-hash
1个回答
1
投票

原因是它将创建一个哈希,它不会存储与您要存储的实际密码关联的哈希。

尽管设置了error reporting,将发出未定义的变量信号。

编辑:

注: password_hash()仅散列密码,不显示任何类型的错误,这不是它的工作,而是服务器上的错误处理。

© www.soinside.com 2019 - 2024. All rights reserved.