Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/276.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我试图检查用户是管理员还是标准用户_Php_Html_Css_Sql - Fatal编程技术网

Php 我试图检查用户是管理员还是标准用户

Php 我试图检查用户是管理员还是标准用户,php,html,css,sql,Php,Html,Css,Sql,当用户登录到该站点时,我希望它能够检查他们是否是管理员。如果他们是管理员,我想把他们发送到管理员页面,如果他们是用户,然后把他们发送到主页。然而,我有一些问题。 出现的错误是 “语法错误,意外==(T_等于),应为”“或”“。” 我正在尝试使用xampp。Admin是数据库中存储整数1或2的行。 1是标准用户,2是管理员 if(!isset($_SESSION['admin'] == '1' OR $_SESSION['admin'] == '')){ header('Location:

当用户登录到该站点时,我希望它能够检查他们是否是管理员。如果他们是管理员,我想把他们发送到管理员页面,如果他们是用户,然后把他们发送到主页。然而,我有一些问题。 出现的错误是

“语法错误,意外==(T_等于),应为”“或”“。”

我正在尝试使用xampp。Admin是数据库中存储整数1或2的行。 1是标准用户,2是管理员

if(!isset($_SESSION['admin'] == '1' OR $_SESSION['admin'] == '')){
    header('Location: home.php');
} else if(!isset($_SESSION['admin'] === '2')){
    header('Location: admin.php');
}

我希望当标准用户登录到网站时,它应该将他们重定向到主页,但是当管理员登录时,它应该将他们重定向到管理员页面。

您试图检查是否设置了条件,但是(在文档中)确定是否声明了一个变量并且该变量不同于NULL

您应该这样检查:

if (isset($_SESSION['admin'])) {
    if ($_SESSION['admin'] === "2") {
        header('Location: admin.php');
    } else {
        header('Location: home.php');
    }
} else {
    header('Location: home.php');
}

您可以通过检查数据库的行并给出适当的标题位置,直接从登录后的文件中执行此操作。 见下面我的代码

if($rows['registrationType'] == 1) //for user
        {
            $_SESSION['user']['id'] = $rows['userId'];//Set Sessions
            header('location: user/index.php');
        }
        elseif($rows['registrationType'] == 2) // for admin
        {
            $_SESSION['admin']['id'] = $rows['userId'];//Set Sessions

            /*Header Location Redirects to that page*/
            header('location: admin/index.php');

        }

isset-确定是否声明了一个变量且该变量不同于NULL,而不是一个条件。但是,当管理员登录到该帐户时,这种情况是有效的。它没有重定向到admin.php,而是重定向到authenticate.php(这是检查用户名和密码是否正确的脚本)。@JackPartington我认为这是另一个问题。我对authenticate.php没有任何疑问