php if 语句将文本与 mysql 中的行值匹配

Owe*_*wen 1 php if-statement

我创建了一个表单,以便用户可以更改密码,为了增加安全性,我希望用户输入旧密码,然后才能将其更改为新密码。我对简单的 if 语句有疑问。

if ($row['password'] = $old_encrypt)
Run Code Online (Sandbox Code Playgroud)

密码是 md5 加密的,因此我在执行此 if 语句之前通过 md5 运行用户输入的密码。

我想检查的是用户输入的密码是否等于数据库中存储的密码。然而,上面的代码将接受任何等于数据库中存储的值...因此有人可以告诉我问题可能是什么吗?

提前致谢

hek*_*mgl 5

您使用了赋值运算符=。您必须使用比较运算符==,或者更好的是严格比较运算符===

if ($row['password'] === $old_encrypt)
Run Code Online (Sandbox Code Playgroud)