Php 用户角色权限

Php 用户角色权限,php,variables,session,admin,user-roles,Php,Variables,Session,Admin,User Roles,我正在尝试为3种不同类型的用户创建权限 正常的 管理员 超级管理员 我不知道该怎么做,也不知道从哪里开始做,因为我对php还很不了解,有人能给我举个例子说明怎么做吗? 如何使用会话变量例如,我在这里找到了一段代码: <?php $result = "SELECT * FROM customers" or die("Error: " . mysqli_error($db)); $res = $db->query($result);

我正在尝试为3种不同类型的用户创建权限

  • 正常的
  • 管理员
  • 超级管理员
我不知道该怎么做,也不知道从哪里开始做,因为我对php还很不了解,有人能给我举个例子说明怎么做吗? 如何使用会话变量例如,我在这里找到了一段代码:

    <?php
$result = "SELECT * FROM customers" or die("Error: " . mysqli_error($db));

            $res = $db->query($result);

            while($row = mysqli_fetch_array($res)) {
                $UserRoleID = $row['userRoleID'];

                $_SESSION['user_role'] = $UserRoleID;
            }
?>

另一页:

<?php

if( (isset($_SESSION['user_role']) ) && (false != $_SESSION['user_role']) )
{
    if( '2' == $_SESSION['user_role'] ) 
    { 
        echo "<li><a href='index.php'>User</a></li>";
    } 

    elseif ('3' == $_SESSION['user_role'] ) 
    { 
        echo "<li><a href='index.php'>Admin</a></li>";
    } 

    else
    { // error condition
        // display details of invalid $_SESSION['user_role']
    }
}

else
{ // error condition
    // display details of missing or empty $_SESSION['user_role']
}

它不会向我显示任何错误,但也不会向我显示输出,因此我无法执行任何操作

您的代码没有使用,因此,无论用户看到任何会话ID,会话信息都不会在请求之间持久存在

使用以下命令启动两个脚本:

<?php

session_start();

页面还有更多内容吗?我没有看到
会话_start()任何地方。您需要在每个单独的页面的页面顶部调用此函数,以便能够在会话中存储数据,“我不知道如何或从何处开始,因为我对php仍然很弱”-那么,我的建议是,您从修复最后一部分开始。不管怎么说,进入“你的头上的方式”很可能不会带来高质量的结果;由于这是一个安全敏感的问题,在您目前的经验水平上尝试这样做甚至可能是危险的。我在页面加载时启动会话,以登录系统。第一个代码示例是可疑的。您确定包含用户的表名为
customer
?然后,如果您登录一个用户,您应该读取该用户的权限并将其存储。但是您读取了表的所有行,查询中没有WHERE子句。此外,在读取角色的循环中,您重置了会话变量的值,因此最终,会话变量中的值将是表最后一行中的值。也许你可以发布你登录用户的部分,然后我们可以更好地知道权限部分应该是什么样子