我已经搜索了很多关于我可能做错了什么的信息,但我没有得到一个if语句来给我想要的结果。这不是我第一次使用if语句,但这似乎是一个挑战。好的,我想根据用户访问级别来隐藏<li>
列表项的一部分,但我似乎没有让它按预期工作。我的访问级别对于普通用户为1,对于管理员为2
`
<ul>
<li><a href="#MyBookings" title="My Bookings">My Items</a></li>
<li><a href="#MyReviews" title="My Reviews">Submit Item</a></li>
<?php if($_SESSION['privillages'] = '2'){ ?>
<li><a href="#Incomings" title="Incomings">Incoming Items </a> </li>
<?php }else{?>
<?php } ?>
<li><a href="#MySettings" title="Settings">Account Settings</a></li>
</ul>`
这是<ul>
的代码片段。当我删除qoutes中的2时,<li>
显示,当我把它放在那里时,<li>
变为
这是处理用户登录的代码
public function login( array $data )
{
$_SESSION['logged_in'] = false;
if( !empty( $data ) ){
// Trim all the incoming data:
$trimmed_data = array_map('trim', $data);
// escape variables for security
$email = mysqli_real_escape_string( $this->_con, $trimmed_data['email'] );
$password = mysqli_real_escape_string( $this->_con, $trimmed_data['password'] );
if((!$email) || (!$password) ) {
throw new Exception( LOGIN_FIELDS_MISSING );
}
$password = md5( $password );
$query = "SELECT user_id, name, email, created, privillages FROM users where email = '$email' and password = '$password' ";
$result = mysqli_query($this->_con, $query);
$data = mysqli_fetch_assoc($result);
$count = mysqli_num_rows($result);
mysqli_close($this->_con);
if( $count == 1){
$_SESSION = $data;
$_SESSION['logged_in'] = true;
return true;
}else{
throw new Exception( LOGIN_FAIL );
}
} else{
throw new Exception( LOGIN_FIELDS_MISSING );
}
}
我在这里做错了什么
我终于得到了解决方案,我丢失了两个等号来证明我的数据库中的数据,这是我为<ul>
编辑的代码
<ul>
<li><a href="#MyBookings" title="My Bookings">My Items</a></li>
<li><a href="#MyReviews" title="My Reviews">Submit Item</a></li>
<?php if($_SESSION['privillages'] == '2'){ ?>
<li><a href="#Incomings" title="Incomings">Incoming Items </a> </li>
<?php }else{?>
<?php } ?>
<li><a href="#MySettings" title="Settings">Account Settings</a></li>
</ul>`