如何限制/阻止内容通过PHP的Session查看?

时间:2019-06-16 16:20:23

标签: php html sql

因此,在身份验证和登录后,我希望根据数据库表中的“ user_type”列是1还是2,显示或不显示某些页面的内容。

我假设我可以使用Session变量来定义它们,但是,我在代码方面有些挣扎。

有session_start();在需要一个页面的每个页面中调用,因此以我的主页为例,我尝试这样做

<?php

$sql = "SELECT users.user_type FROM users";
$result = mysqli_query($sql);
$user = mysqli_fetch_array($result);
$_SESSION['user'] = $user['user'];
$_SESSION['user_type'] = $user['user_type'];

if($_SESSION['user']['user_type'] == 1) { ?>
//do stuff here

插入数据库中填充的数据的部分代码

(另外,请注意,“ uidUsers”不是用户ID,而是用户名)

 $sql = "INSERT INTO users (uidUsers, emailUsers, pwdUsers, user_type) VALUES (?,?,?,?)";
                    $stmt = mysqli_stmt_init($conn);
                    if (!mysqli_stmt_prepare($stmt, $sql)) {
                        header("Location: ../signup.php?error=sqlerror");
                        exit();
                    }
                else {
                    $hashedPwd = password_hash($password, PASSWORD_DEFAULT);
                    mysqli_stmt_bind_param($stmt, "ssss", $username,$email, $hashedPwd, $user_type);
                    mysqli_stmt_execute($stmt);
                        header("Location: ../signin.php?signup=success");
                        exit();

我几乎需要根据用户在数据库中定义的内容来显示内容,但是我只是缺少一些我感觉很明显的东西。

0 个答案:

没有答案