我有一个表格,其中我从用户那里获取用户名和密码,
我正在将密码转换为 md5。然后我将其插入数据库。在用户登录表单中,我获取密码并将其转换为 md5。然后我比较两个密码。它在某些条件下匹配,但如果密码 = 则失败p@$$w0rd
。
有什么问题吗?这个问题的解决方案是什么?
从我的表单到数据库密码p@$$w0rd
到 md5 是b7463760284fd06773ac2a48e29b0acf
从登录表单来看是e22bb24ca616331cb92a48b712034bc3
注册表中的代码
$password = trim($_POST['password']);
$dpassword = md5($password);
并从登录表单$passwd = md5($password);
$sql = mysql_query("select * from create_dealer where (dealer_email='$user' && password='$passwd')");
问题出在引号上。
echo md5('p@$$w0rd');// echoes b7463760284fd06773ac2a48e29b0acf
echo md5("p@$$w0rd");// echoes e22bb24ca616331cb92a48b712034bc3
当您使用双引号时,$w0rd
被视为未定义变量并替换为空字符串。
echo md5("p@$");// echoes e22bb24ca616331cb92a48b712034bc3
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)