0
以下我的代码给了我文件夹明智的登录,但没有验证我的密码和会话。多用户登录不验证密码和会话
不带开关的情况下,如果其他条件它的工作,但那么只有拖角色正在
我需要一个多角色
ob_start();
require_once 'dbconnect.php';
$userName = '';
$passError = '';
$error = false;
if (isset($_POST['btn-login'])) {
$userName = trim($_POST['userName']);
$userName = strip_tags($userName);
$userName = htmlspecialchars($userName);
$pass = trim($_POST['pass']);
$pass = strip_tags($pass);
$pass = htmlspecialchars($pass);
if (empty($userName)) {
$error = true;
$userNameError = "Please enter your User Name.";
}
if (empty($pass)) {
$error = true;
$passError = "Please enter your password.";
}
if (!$error) {
$password = hash('sha256', $pass);
$res = mysqli_query($conn, "SELECT userId, userName, userPass, role FROM users1 WHERE userName='$userName'");
$row = mysqli_fetch_array($res);
$count = mysqli_num_rows($res);
var_dump($count);
$count == 1 && $row['userPass'] == $password && $row['role'] == 'multirole';
$multirole = $row['role'];
$row['userPass'] == ($password);
switch ($multirole) {
case "admin":
$_SESSION['user'] = $row['userName'];
$_SESSION['role'] = 'admin';
header('Location: admin/home.php');
break;
case "user":
$_SESSION['user'] = $row['userName'];
$_SESSION['role'] = 'user';
header('Location: user/home.php');
break;
default:
echo "No User Found ! Please Contact Admin";
}
}
}
你有什么建议吗?
不行他们是somting在编码丢失可能是usname和密码的对象不正确设置 –
@BillyBarret有可能,找到问题的最好方法是开始测试你的代码部分!它意味着只是测试你的数据是否与if和else一起发布并回显每个条件的消息!所以你会发现问题在哪里! – Soheyl