在php中使用md5()函数后密码未加密

在php中使用md5()函数后密码未加密,php,mysql,encryption,md5,Php,Mysql,Encryption,Md5,我尝试在php中使用md5()函数加密登录密码。我遵循了来自的教程,但密码在我的数据库中仍然可读。我用了这个密码 $host="localhost"; $username="root"; $password=""; $db_name="database"; $tbl_name="members"; mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_nam

我尝试在php中使用md5()函数加密登录密码。我遵循了来自的教程,但密码在我的数据库中仍然可读。我用了这个密码

$host="localhost";
$username="root";
$password="";
$db_name="database";
$tbl_name="members";

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

// POST values from form
$name=$_POST['name'];
$email=$_POST['email'];
$password=$_POST['password'];

// encrypt password 
$encrypted_password=md5($password);
$sql="SELECT * FROM $tbl_name WHERE username='$username' and password='$encrypted_password'";
$result=mysql_query($sql);

// Insert data into mysql 
$sql="INSERT INTO $tbl_name(name, email, password)VALUES('$name', '$email', '$password')";
$result=mysql_query($sql);

// if successfully insert data into database, displays message "Successful". 
if($result){
echo "Your account had been created..!";
echo "<BR>";
echo "<a href='login.php'>Login to continue</a>";
}

else {
echo "There's an error. Why don't you try again? it may be temporary.";
}
$host=“localhost”;
$username=“root”;
$password=“”;
$db_name=“数据库”;
$tbl_name=“成员”;
mysql_connect(“$host”、“$username”、“$password”)或die(“无法连接”);
mysql_选择_db($db_name)或die(mysql_error());
//从表单发布值
$name=$_POST['name'];
$email=$_POST['email'];
$password=$_POST['password'];
//加密密码
$encrypted_password=md5($password);
$sql=“从$tbl\u名称中选择*,其中用户名='$username'和密码='$encrypted\u password';
$result=mysql\u查询($sql);
//将数据插入mysql
$sql=“插入$tbl_名称(名称、电子邮件、密码)值(“$name”、“$email”、“$password”)”;
$result=mysql\u查询($sql);
//如果成功地将数据插入数据库,则显示消息“Successful”。
如果($结果){
echo“您的帐户已创建…”;
回声“
”; 回声“; } 否则{ echo“出现错误。为什么不再试一次?这可能是暂时的。”; }
请帮帮我…

这个怎么样

$sql="INSERT INTO $tbl_name(name, email, password)VALUES('$name', '$email', '$encrypted_password')";
$result=mysql_query($sql);

因为您插入的是
$password
,而不是
$encrypted\u password
。这就是说,您首先不应该使用
md5()
进行密码哈希;有关哈希和加密的更多详细信息,请参阅。有关合理密码哈希的更多背景信息,请参阅。太棒了!我很乐意帮忙。请接受我的回答