这可能有一个超级简单的解决方案,但我无法绕过它。
我有这个SQL查询:
SELECT traning.type_name,users.user_id,
users.user_name,user_traning.min_puls,
user_traning.medel_puls,user_traning.max_puls,
user_traning.duration,user_traning.date, user_traning.view
from traning inner join user_traning
on traning.tr_id=user_traning.tr_id
inner join users on user_traning.user_id=users.user_id
ORDER BY `user_traning`.`date` DESC
我在user_traning中有一个名为view
的列。
输入表单输入null
或2
。我认为NULL意味着每个人都可以查看输入,而2是用户想要隐藏输入。
我一直在尝试这种方式:
while($row = $users_traning->fetchObject())
{
if($row->user_id == $_SESSION['user_id'] && $row->view == NULL)
{
echo '<span class="glyphicon glyphicon-user"></span> <a href="userinfo.php='.$row->user_id.'">You </a> have ' .$row->type_name. ' for ' .round($minuter,2). ' min';
echo '<br>';
}else{
echo '<span class="glyphicon glyphicon-globe"></span> <a href="userinfo.php='.$row->user_id.'">'.$row->user_name.' </a> has been ' .$row->type_name. ' i ' .round($minuter,2). ' for';
echo '<br>';
}}
正如你所看到的;如果用户选择隐藏其输入(插入2),则行与glyphicon-user一起显示,如果没有,则显示为glyphicon-globe。
除了在列视图中插入2
的其他用户的行外,我想输出所有内容。但我的“自己的”行仍然显示相应的字形。
我该怎么做?
非常感谢!
答案 0 :(得分:0)
假设user1已登录..
while($row = $users_traning->fetchObject())
{
if($row->user_id == $_SESSION['user_id']){ //For user1
$glyphicon = (empty($row->view)) ? 'user' : 'globe' ; // if $row->view is null 'user' is assigned else 'globe'
echo '<span class="glyphicon glyphicon-'.$glyphicon.'"></span> <a href="userinfo.php='.$row->user_id.'">You </a> have ' .$row->type_name. ' for ' .round($minuter,2). ' min';
echo '<br>';
}elseif($row->user_id != $_SESSION['user_id'] && empty($row->view)){ // For user2
echo '<span class="glyphicon glyphicon-globe"></span> <a href="userinfo.php='.$row->user_id.'">'.$row->user_name.' </a> has been ' .$row->type_name. ' i ' .round($minuter,2). ' for';
echo '<br>';
}
}