检查密码值是否相同

And*_*ara 0 php mysql

我需要检查值是否相同.如果$_POST['password']= PASS而不是pass它将返回0行.

这个脚本应该回显1或0.它可以正常工作,但我想让它更安全.

$_POST['username'] = 'admin';
$_POST['password'] = 'pass';
    mysql_connect('localhost', '', '');
    mysql_select_db('database');
    echo $num = mysql_num_rows(mysql_query("SELECT username,password FROM users WHERE username = '". mysql_real_escape_string($_POST['username']) . "' AND password = '". mysql_real_escape_string($_POST['password']) . "'"));
Run Code Online (Sandbox Code Playgroud)

mik*_*kel 7

如果你想让它更安全,你根本不应该在数据库中以纯文本形式存储密码.存储密码的哈希值(例如MD5或SHA1),最好添加一个盐,然后每次将其与输入密码的哈希值进行比较是一种更好的方法.

对于您的查询,听起来好像你想让它区分大小写.为此,您需要将密码列上的排序规则更改为区分大小写的排序规则.这些是以_cs结尾的排序规则,例如latin1_general_cs.