您好我能够在页面上显示用户朋友但是当我进入朋友档案时我仍然看到跟随按钮,无论如何我可以在关注后删除按钮吗?我正在使用codeigniter。见代码。
模型
public function get_friends($user_id = NULL){
if ($user_id = $this->session->userdata('user_id')){
$this->db->select('*');
$this->db->from('users');
$this->db->join('friends', 'friends.user_id = users.user_id');
$this->db->where('friends.user_id2', $user_id);
$query = $this->db->get();
return $query->result_array($user_id);
}
}
控制器
public function view($user_id = NULL){
$data['friends'] = $this->Friend_model->get_friends($user_id);
$this->load->view('user/templates/header_view_subpage');
$this->load->view('user/members_entry_view', $data);
$this->load->view('user/templates/footer_view_subpage');
}
查看
<?php
$session = $this->session->userdata('user_id');
$friends = $this->session->userdata('user_id2');
if($session == $members['user_id']):
?>
<div class="col-md-6">
<button type="button" class="btn btn-primary btn-sm btn-block"><i class="fa fa-envelope"></i> Send Message</button>
</div>
<?php
endif;
?>
答案 0 :(得分:0)
您必须编写一个函数来检查用户是否已经是朋友,如下所示:
public function isFriend($id){
return $this->Friend_model->is_friend($user_id);
}
is_friend方法将获取数据库并尝试使用$ user_id获取用户,如果有记录则我们的函数将返回true,否则它将返回false;
public function is_friend($user_id,$friend_id){
$this->db->select('*');
$this->db->from('friends');
$this->db->where('user_id',$user_id);
$this->db->where('friend_id',$friend_id);
$query = $this->db->get();
$results = $query->result_array();
return count($results) ? 1 : 0;
}
在此之后我们在我们的视图中调用该函数,如果它返回true,那么我们不会显示该按钮,否则我们会显示它。