php - PHP:无法使用管理员帐户登录
问题描述
我正在尝试根据此查询提供的“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 语句是错误的,它只是将我带到用户帐户(来自 else 语句)。
我该如何解决这个问题?
解决方案
mysqli_fetch_assoc
返回一个数组,因此您必须使用:
$row = mysqli_fetch_assoc($query2);
$admin = 'Admin';
if($admin === $row['Nume'])
{
....
推荐阅读
- node.js - node.js module.exports 返回未定义
- python - 如何删除阿拉伯语中的停用词?
- python - Jupyter 脚本突然不再识别类(NameError)
- javascript - 如何将基本 Javascript 项目转换为 React-Typescript 兼容项目
- android - 是否可以将移动应用程序写入micro sd卡?
- list - Draftsight LISP,使用 (cons) 函数构建 x 坐标列表的问题
- python - 如何让机器人提及某人?
- javascript - 通过电子邮件仅以 pdf 格式发送一张工作表或活动工作表
- pandas - 数据框的自定义排序值
- c++ - 共享库中的 Clang C++20 模块