Php 如果isset userid等于1?

Php 如果isset userid等于1?,php,mysqli,Php,Mysqli,我有个小问题!我当前有一个来自登录页面的用户ID号,我不能这样做吗 这项工作: session_start(); if (isset($_SESSION["UserID"])){ } include('../includes/navAdmin.inc.php'); } else { header('Location: Login.php'); } 但我想做更多类似的事情来限制某些用户的链接,等等: session_start(); if (isset($_SESSION["Us

我有个小问题!我当前有一个来自登录页面的用户ID号,我不能这样做吗

这项工作:

session_start();
if (isset($_SESSION["UserID"])){
}
    include('../includes/navAdmin.inc.php');
}
else {
    header('Location: Login.php');
}
但我想做更多类似的事情来限制某些用户的链接,等等:

session_start();
if (isset($_SESSION["UserID"])){
}else if (isset($_SESSION["UserID"] === 1){ <---this one to give the "admin" the admin page etc
    include('../includes/navAdmin.inc.php');
}
else {
    header('Location: Login.php');
}
session_start();
如果(isset($\u会话[“UserID”])){

}否则如果(isset($_SESSION[“UserID”]==1){您需要修改代码以检查它是否设置为等于1

if (isset($_SESSION["UserID"]) && $_SESSION["UserID"] === 1)
而不是
else if

如果未设置或不等于1,则只需在此之后设置一个
else
条件

if (isset($_SESSION["UserID"]) && $_SESSION["UserID"] === 1)
另一个注意事项是,在标题后面添加
exit;
。如果在标题下面有更多的代码,它将继续执行

根据手册:

<?php
header("Location: http://www.example.com/"); /* Redirect browser */

/* Make sure that code below does not get executed when we redirect. */
exit;
?>
如果将错误报告设置为catch/display,则会引发意外的文件结束通知

您可能打算这样做:

if (isset($_SESSION["UserID"])){
    include('../includes/navAdmin.inc.php');
}

else {
    header('Location: Login.php');
}
添加到文件的顶部,这将有助于查找错误

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// Then the rest of your code

您需要修改代码,以检查它是否设置为等于1

if (isset($_SESSION["UserID"]) && $_SESSION["UserID"] === 1)
而不是
else if

如果未设置或不等于1,则只需在此之后设置一个
else
条件

if (isset($_SESSION["UserID"]) && $_SESSION["UserID"] === 1)
另一个注意事项是,在标题后面添加
exit;
。如果在标题下面有更多的代码,它将继续执行

根据手册:

<?php
header("Location: http://www.example.com/"); /* Redirect browser */

/* Make sure that code below does not get executed when we redirect. */
exit;
?>
如果将错误报告设置为catch/display,则会引发意外的文件结束通知

您可能打算这样做:

if (isset($_SESSION["UserID"])){
    include('../includes/navAdmin.inc.php');
}

else {
    header('Location: Login.php');
}
添加到文件的顶部,这将有助于查找错误

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// Then the rest of your code

将您的情况写在下面:-

session_start();
if (isset($_SESSION["UserID"])){
    if($_SESSION["UserID"] === 1){
        include('../includes/navAdmin.inc.php'); die;
    }else{
         header('Location: Login.php'); die;
    }
}else{
    header('Location: Login.php'); die;
}

将您的情况写在下面:-

session_start();
if (isset($_SESSION["UserID"])){
    if($_SESSION["UserID"] === 1){
        include('../includes/navAdmin.inc.php'); die;
    }else{
         header('Location: Login.php'); die;
    }
}else{
    header('Location: Login.php'); die;
}

你确定这行得通吗?在你的第一个if的开始括号之后有一个结束括号statement@thanksd是的,它们只是在第一个条件的
if(isset($\u SESSION[“UserID”]){}
中没有任何内容。所有大括号都匹配。@Fred ii-在第一个示例中没有任何内容(他说正在工作)@thanksd啊好的。我没有检查。我以为你说的是第二个问题。你是对的。+1关于你的评论;-)@thanksd我对我的回答做了额外的编辑,概述了语法错误,如果OP没有修改他们的问题,如果那不是他们的实际代码。(我不是在这里踢要点)-)你确定这有效吗?你的第一个if的开始括号后面紧跟着一个结束括号statement@thanksd是的,它们只是在第一个条件的
if(isset($\u SESSION[“UserID”]){}
中没有任何内容。所有大括号都匹配。@Fred ii-在第一个示例中没有任何内容(他说正在工作)@thanksd啊好的。我没有检查。我以为你说的是第二个问题。你是对的。+1关于你的评论;-)@thanksd我对我的回答做了额外的编辑,概述了语法错误,如果OP没有修改他们的问题,如果那不是他们的实际代码。(我不是在这里踢要点);-)不客气:)弗雷德-ii-的回答更准确。不客气:)弗雷德-ii-的回答更准确。谢谢你关于标题后退出的说明。我不知道:)谢谢你关于标题后退出的说明。我不知道:)