PHP:无法使用管理员帐户登录

时间:2019-01-03 11:44:15

标签: php mysqli

我试图根据此查询提供的“ CNP”和“ Parola”查找存储在“ Nume”列中的数据:

$query2=mysqli_query($con, "SELECT Nume FROM allusers WHERE CNP='".$cnp." AND Parola='".$pass."'");

然后存储找到的数据并进行比较,以查看管理员是尝试登录还是只是基本用户:

$name=mysqli_fetch_assoc($query2);
$admin='Admin';
if($admin===$name)
{
	$_SESSION['sesiune']=$cnp;  
	header("Location: admin_account.php");  
}
else
{
	$_SESSION['sesiune']=$cnp;  
	header("Location: user_account.php"); 
}

当我使用管理员“ CNP”和“ Parola”并且如果无法使用管理员帐户登录时,if语句为false,这只是将我带到用户帐户 (来自else语句)。

如何解决此问题?

2 个答案:

答案 0 :(得分:0)

mysqli_fetch_assoc返回一个数组,因此必须使用:

$row = mysqli_fetch_assoc($query2);
$admin = 'Admin';
if($admin === $row['Nume'])
{
....

答案 1 :(得分:0)

此行之后

$name=mysqli_fetch_assoc($query2);

print_r($name);

它将告诉您$ name是一个数组而不是字符串。 根据我的理解,您必须执行此操作

if($name['numa'] =='Admin')