【问题标题】:php session directory permission denyphp会话目录权限拒绝
【发布时间】:2015-05-23 13:23:20
【问题描述】:

我是php新手

这是登录页面脚本

<?php include('dbconnect.php');

    $username = mysql_real_escape_string($_POST['username']);
    $password = mysql_real_escape_string($_POST['password']);

    $admins_sql = "SELECT * FROM  administrator WHERE   username = '" .$username. "' AND password = '".md5($password). "' AND status = 'Active'";
    $admin_exe = mysql_query($admins_sql, $con);

    //Setting session variable

    $admin_row=mysql_fetch_array($admin_exe);
    $_SESSION['username'] = $admin_row['username'];
    $_SESSION['type'] = $admin_row['type'];

    IF($_SESSION['type'] == 'Admin') {header("Location:admin");exit(); }
    IF($_SESSION['type'] == 'Main') {header("Location:main");  exit(); }
    IF($_SESSION['type'] == 'Teaching') {header("Location:Teaching"); exit(); }
    IF($_SESSION['type'] == 'Exam Cell') {header("Location:Exam Cell"); exit(); }
    IF($_SESSION['type'] == 'Non-Teaching') {header("Location:Non-Teaching"); exit(); }
    IF($_SESSION['type'] == 'Library') {header("Location:Library"); exit(); }
    IF($_SESSION['type'] == 'Main') {header("Location:office"); exit(); }
    IF($_SESSION['type'] == 'Placement') {header("Location:Placement"); exit(); }
    IF($_SESSION['type'] == 'Systems') {header("Location:CC"); exit(); }
    IF($_SESSION['type'] == 'student') {header("Location:student"); exit(); }

?>

具有在上述脚本中的重定向中看到的文件夹。

我的问题是,如果一个教学类型的用户登录,他们将被重定向到显示 url IP 地址/主文件夹名称/Teaching/index.php。他们可以将url中的Teaching改为admin,然后进入admin文件夹并访问管理功能。

我想要的是一种类型的用户不要进入另一种类型的用户文件夹。

【问题讨论】:

  • 在每个区域的顶部,您可以像在登录页面中检查一样检查,但不要破坏您的会话,否则您将无法进行此类验证。

标签: php session directory-permissions


【解决方案1】:

例如,在您的主页顶部,您应该验证访问权限,并对您拥有的每个区域执行相同操作。还有其他方法可以做到这一点,但这种方式应该可以满足您的需求。

session_start();
if( !isset( $_SESSION['type'] ) AND $_SESSION['type'] != 'Main' ) {
    header("Location: AccessDenied");
}

【讨论】:

    猜你喜欢
    • 2012-01-11
    • 2020-06-11
    • 1970-01-01
    • 1970-01-01
    • 2011-01-30
    • 2016-06-25
    • 2011-01-16
    • 2014-03-15
    • 1970-01-01
    相关资源
    最近更新 更多