Php 我无法将我的密码与md5数据库密码进行比较
我正在尝试将我的登录密码与数据库md5密码进行比较,但无法进行比较。我也使用md5创建了我的登录密码,但仍然存在问题。。请帮助我,我是PHP新手。Php 我无法将我的密码与md5数据库密码进行比较,php,md5,Php,Md5,我正在尝试将我的登录密码与数据库md5密码进行比较,但无法进行比较。我也使用md5创建了我的登录密码,但仍然存在问题。。请帮助我,我是PHP新手。 $username = $_POST['username']; $password = $_POST['password']; $pass =md5($password); if ($username&&$password) { $connect = mysqli_connect("localhost", "root", "pixst
$username = $_POST['username'];
$password = $_POST['password'];
$pass =md5($password);
if ($username&&$password)
{
$connect = mysqli_connect("localhost", "root", "pixster")or die("Couldn't connect to database!");
mysqli_select_db($connect,'rdb') or die ("Couldn't find database");
echo "successfully connected to database<br>";
$query = mysqli_query($connect,"SELECT * FROM login WHERE uname ='$username'");
$numrows=mysqli_num_rows($query);
if($numrows!==0)
{
while($row = mysqli_fetch_assoc($query))
{
$dbusername = $row['uname'];
$dbpassword = $row['password'];
$dbusername;
$dbpassword;
}
if($username==$dbusername&& $pass==$dbpassword)
{
include('logprofile.php');
echo "you are logged in!";
//$_SESSION['abc'] = $username;
}else
echo "your password is wrong";
$username=$\u POST['username'];
$password=$_POST['password'];
$pass=md5($password);
如果($username&&$password)
{
$connect=mysqli_connect(“localhost”、“root”、“pixster”)或die(“无法连接到数据库!”);
mysqli_选择_db($connect,'rdb')或die(“找不到数据库”);
echo“成功连接到数据库
”;
$query=mysqli_query($connect,“从uname='$username'的登录名中选择*);
$numrows=mysqli\u num\u行($query);
如果($numrows!==0)
{
while($row=mysqli\u fetch\u assoc($query))
{
$dbusername=$row['uname'];
$dbpassword=$row['password'];
$dbusername;
$dbpassword;
}
如果($username==$dbusername&&$pass==$dbpassword)
{
包括('logprofile.php');
echo“您已登录!”;
//$\会话['abc']=$username;
}否则
回显“您的密码错误”;
请尝试如果($numrows!=0)
而不是如果($numrows!==0)
试试这个
while($row = mysqli_fetch_assoc($query))
{
$dbusername = $row['uname'];
$dbpassword = $row['password'];
}
删除循环中的以下行:
$dbusername;
$dbpassword;
试试这个:
$username = $_POST['username'];
$password = $_POST['password'];
$pass =md5($password);
if ($username&&$password)
{
$connect = mysqli_connect("localhost", "root", "pixster")or die("Couldn't connect to database!");
mysqli_select_db($connect,'rdb') or die ("Couldn't find database");
echo "successfully connected to database<br>";
$query = mysqli_query($connect,"SELECT * FROM login WHERE uname ='$username'");
$numrows=mysqli_num_rows($query);
if($numrows > 0)
{
while($row = mysqli_fetch_assoc($query))
{
$dbusername = $row['uname'];
$dbpassword = $row['password'];
}
if($username==$dbusername && $pass==$dbpassword)
{
include('logprofile.php');
echo "you are logged in!";
//$_SESSION['abc'] = $username;
}else
echo "your password is wrong";
$username=$\u POST['username'];
$password=$_POST['password'];
$pass=md5($password);
如果($username&&$password)
{
$connect=mysqli_connect(“localhost”、“root”、“pixster”)或die(“无法连接到数据库!”);
mysqli_选择_db($connect,'rdb')或die(“找不到数据库”);
echo“成功连接到数据库
”;
$query=mysqli_query($connect,“从uname='$username'的登录名中选择*);
$numrows=mysqli\u num\u行($query);
如果($numrows>0)
{
while($row=mysqli\u fetch\u assoc($query))
{
$dbusername=$row['uname'];
$dbpassword=$row['password'];
}
如果($username==$dbusername&&$pass==$dbpassword)
{
包括('logprofile.php');
echo“您已登录!”;
//$\会话['abc']=$username;
}否则
回显“您的密码错误”;
我得到了这个问题的答案。有一个数据库问题,我的密码长度比md5转换的密码短。所以我只是增加了长度。现在两个密码都匹配了,我可以登录了。md5不再是存储密码的安全加密在db connect中发布真实的根密码吗???plz告诉我你面临的实际问题是什么,你会遇到什么类型的错误?@是的,他有。但这并不重要,因为你无论如何都无法访问他的根。它是本地的。是的,我可以连接到我的数据库。事实上,if语句是不必要的。你可以改为编写while语句