Codeigniter显示已删除用户的评论

时间:2014-10-30 10:44:56

标签: php mysql codeigniter

以下代码可帮助我显示特定帖子的所有评论(包含用户信息)。

当用户停用其帐户时,我希望其他用户仍然可以看到他的评论,但不显示他的信息(例如姓名和城市)。我想改为显示默认值。

所以我需要修改下面的代码,以便检查用户是否存在。如果没有,请返回默认名称和城市值。

我试图找到几个小时的解决方案,但无法得到我想要的结果。你能帮我解决一下这个问题。

public function get_comments($post_id){

$this->db->select('comments.comment_text, users.name,users.city');
$this->db->from('comments','users');   
$this->db->where('comments.post_id', $post_id);
$this->db->join('users','comments.user_id = users.user_id');    

$query = $this->db->get();

if ($query && $query->num_rows() >= 1){
return $query->result();
}
else {
return false;
     }
}

1 个答案:

答案 0 :(得分:2)

您可以检索所有用户信息,并在检查用户是否处于活动状态后:

$data = $this->db->select('comments.comment_text, users.name, users.city, users.active');
->from('comments');
->where('comments.post_id', $post_id);
->join('users','comments.user_id = users.user_id')
->get()result();

然后在您的视图中检查您的用户是否处于活动状态,如果是这种情况,您将显示所有信息,如果您只显示您想要的内容:

foreach($data as $d) 
{
  if($d->active == 1) // User active
  {
    echo .....;
  }
  else // User not active
  {
    echo ...;
  }
}