Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.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_Button_Hide_Admin_Display - Fatal编程技术网

PHP检查用户是否为管理员/用户,并显示按钮

PHP检查用户是否为管理员/用户,并显示按钮,php,button,hide,admin,display,Php,Button,Hide,Admin,Display,我不是PHP专家,所以需要一些帮助 我在我的网站上有一个登录功能,它可以检查用户是管理员还是正常用户,工作正常 我添加了一个新功能,系统应该检查用户是否登录并显示不同的按钮 如果用户未登录,则显示登录/注册按钮 如果用户以用户身份登录,则显示user.php按钮和 logout.php 如果用户是管理员,则显示admin.php和logout.php 但是,它只适用于用户。我错过了什么UserTypeID在数据库中为用户设置1,为管理员设置2 session_start(); <?ph

我不是PHP专家,所以需要一些帮助

我在我的网站上有一个登录功能,它可以检查用户是管理员还是正常用户,工作正常

我添加了一个新功能,系统应该检查用户是否登录并显示不同的按钮

  • 如果用户未登录,则显示登录/注册按钮
  • 如果用户以用户身份登录,则显示user.php按钮和
    logout.php
  • 如果用户是管理员,则显示admin.php和logout.php
但是,它只适用于用户。我错过了什么
UserTypeID
在数据库中为用户设置1,为管理员设置2

session_start();
<?php
if(isset($_SESSION['UserTypeID']) == 1) //check if user is a user and display buttons
{
?>
    <li><a href="user.php">My Account</a></li>
    <li><a href="logout.php">Logout</a></li>

<?php } elseif(isset($_SESSION['UserTypeID']) == 2) //check if user is an admin and display buttons
{
?>
    <li><a href="admin.php">My Account</a></li>
    <li><a href="logout.php">Logout</a></li>

<?php  }else{ // if user is not logged in then display these buttons?> 
    <li><a href="signin.php">Sign In</a></li>
    <li><a href="signup.php">Sign Up</a></li>
<?php } ?>


session_start();

  • 像这样做。这会奏效的

    <?php 
    session_start();
    if(!empty($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 1) //check if user is a user and display buttons
    {
    ?>
    <li><a href="user.php">My Account</a></li>
    <li><a href="logout.php">Logout</a></li>
    
    <?php } else if(!empty($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 2) //check if user is an admin and display buttons
    {
    ?>
    <li><a href="admin.php">My Account</a></li>
    <li><a href="logout.php">Logout</a></li>
    
    <?php  }else{ // if user is not logged in then display these buttons?> 
    <li><a href="signin.php">Sign In</a></li>
    <li><a href="signup.php">Sign Up</a></li>
    
    <?php } ?>
    
    
    
  • isset($\u会话['UserTypeID'])
    返回
    true
    false

    session_start();
    <?php if(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 1) //check if user is a user and display buttons
        {
        ?>
        <li><a href="user.php">My Account</a></li>
        <li><a href="logout.php">Logout</a></li>
    
        <?php } elseif(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID'] == 2) //check if user is an admin and display buttons
        {
        ?>
        <li><a href="admin.php">My Account</a></li>
        <li><a href="logout.php">Logout</a></li>
    
    
    <?php  }else{ // if user is not logged in then display these buttons?> 
    <li><a href="signin.php">Sign In</a></li>
    <li><a href="signup.php">Sign Up</a></li>
    <?php } ?>
    
    session_start();
    
  • session\u start()函数需要在php内部编写,并编写如下代码:

      <?php 
        session_start();
        if(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID']== 1) //check if user is a user and display buttons
         {
         ?>
       <li><a href="user.php">My Account</a></li>
       <li><a href="logout.php">Logout</a></li>
    
      <?php } elseif(isset($_SESSION['UserTypeID']) && $_SESSION['UserTypeID'] == 2) //check if user is an admin and display buttons
           {
          ?>
         <li><a href="admin.php">My Account</a></li>
       <li><a href="logout.php">Logout</a></li>
    
    
       <?php  }else{ // if user is not logged in then display these buttons?> 
      <li><a href="signin.php">Sign In</a></li>
      <li><a href="signup.php">Sign Up</a></li>
     <?php } ?>
    
    
    

  • isset($\u SESSION['UserTypeID'])是0或1,而不是2。
    SESSION\u start()
    在Hi Gerard之外,在我的数据库中,admin设置为2,它可以很好地登录。别认为那是个问题Hi kerbholz是的我意识到了。但这并不能解决问题。还有一些东西不见了。thanks@DawidOskwarek您需要检查的是$\u SESSION['UserTypeID']==2,不带isset@DawidOskwarek别忘了接受这个答案。谢谢