如何在我的sql数据库中使用md5()函数

sur*_*ava 0 php sql md5

我的问题解决了.我不希望得到更多答案.所以,请不要投票,因为我需要一些声誉来投票给别人发帖.谢谢

我尝试md5()用于登录系统,但它不加密密码.它仍然在我的数据库上显示原始密码.这是我的代码:

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
mysql_select_db("$db_name")or die("cannot select DB");

$myusername=$_POST['myusername']; 
$mypassword=md5($_POST['mypassword']); 



$sql="select * from $tbl_name where username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);

$count=mysql_num_rows($result);

if($count==1){
session_register("myusername");
session_register("mypassword"); 
header("location:login_success.php");
}
else {
header("location:login.html");
}
?>
Run Code Online (Sandbox Code Playgroud)

我只是编辑我的代码 $mypassword=md5($_POST['mypassword']);

aru*_*run 9

您刚刚打印了md5d密码,在插入之前将其存储到变量中

$mypassword = md5($_POST['mypassword']);
$sql="select * from $tbl_name where username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
Run Code Online (Sandbox Code Playgroud)

我认为您的逻辑存在一些问题,您是否以加密形式存储密码?那么只有你可以通过这个select命令获取数据,否则$count=mysql_num_rows($result);总是为零

请看看这里

为什么我不应该在PHP中使用mysql_*函数?

  • 请*请*转义您的POST变量以防止SQL注入.每当你不逃避它们时,一只小猫就会死去. (2认同)