因此,在身份验证和登录后,我希望根据数据库表中的“ 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();
我几乎需要根据用户在数据库中定义的内容来显示内容,但是我只是缺少一些我感觉很明显的东西。