PHP如果语句为SESSION
问题描述:
我正在开发一个用户登录的项目,如果rep
列是他们的name
,那么它只会显示记录。我知道有一吨的方法可以做到这一点,但最简单的方法对我来说是使用如果具有会话PHP如果语句为SESSION
if($_SESSION['account_type'] == 'Rep') {
$sql = "SELECT * FROM `employee` WHERE rep='".$_SESSION['name']."' ";
} elseif ($_SESSION['account_type'] == 'Manager') {
$sql = "SELECT * FROM `employee` WHERE Manager='".$_SESSION['name']."' ";
} elseif ($_SESSION['account_type'] == 'Regional') {
$sql = "SELECT * FROM `employee` WHERE Region='".$_SESSION['regional']."' ";
} elseif ($_SESSION['account_type'] == 'Other') {
$sql = "SELECT * FROM `employee` ";
} else {
echo 'no records found';
}
如果您的帐户类型是rep
,报表只显示您的姓名记录。如果您的帐户类型为manager
,请显示经理记录中包含您的姓名等的记录等。
由于某种原因,我没有收到任何记录;其空白。
如果我改变它只是:
$sql = "SELECT * FROM `employee` WHERE rep='".$_SESSION['name']."' ";
我得到记录回到了它拥有的代表列的用户名;这是伟大的,但我需要的if语句工作。
任何想法?
UPDATE
语法错误 - 谢谢!
答
使用===
或strcmp
函数。 您不应该使用==
来比较String
。
尝试if($_SESSION['account_type'] === 'Rep')
等等...
没有错误可言仅仅只有空白? –
您是否在页面顶部开始了会话? – JYoThI
空白页意味着您的代码中的某处出错 – JYoThI