【发布时间】:2019-02-25 17:03:52
【问题描述】:
我正在做一个股票管理网站,目前唯一的问题是页面限制,因此普通用户无法访问敏感的管理数据。
我已经做了这个测试代码:
<?php
$perm = $_SESSION["perm_level"];
if ($perm == 0) {
$test = "Employee";
} elseif ($perm == 1) {
$test = "Manager";
} elseif ($perm == 2) {
$test = "Teacher";
} else {
$test = "No value retrieved from session.";
}
?>
结果会打印到 admin.php 页面中,因此即使 $perm 和 $test 都回显了,我也只会得到 Employee 而没有 $perm。如何将会话变量正确分配给变量 $perm?
【问题讨论】:
-
您正确地分配了
$perm,我很确定问题是没有设置$_SESSION['perm_level'],所以$perm是NULL,因此$perm == 0测试总是返回true(因为NULL == 0)所以$test总是设置为“员工” -
你有
session_start()...吗?! -
提示:如果由于某种原因打印出变量时没有显示任何内容,请使用 var_dump() php 函数打印变量内容,这将准确显示变量的类型及其值(如果有的话)。
-
JCoDog 是新用户。帮助他纠正而不是投反对票。
标签: php session-variables