Elem, nisam ni sumnjao da ce zapeti kod realizacije...
Ovako izgleda trenutna funkcija za dobijanje postova:
PHP kôd:
function get_posts()
{
//query to get posts and all relevant data
$this->db->select('posts.pid,posts.title,posts.content,posts.user_id,posts.time,posts.likes,users.username,users.id');
$this->db->from('posts');
//da li treba join?
$this->db->join('users', 'users.id = posts.user_id');
//$this->db->join('likes', 'likes.post_id=posts.pid','left' );
$this->db->order_by("time", "desc");
$query = $this->db->get();
foreach ($query->result() as $row)
{
$posts[]=$row;
$pids[]=$row->pid;
}
//die(print_r($pids));
$this->db->select('users.username,likes.post_id');
$this->db->from('likes');
$this->db->join('users', 'users.id = likes.like_uid','inner');
$this->db->where_in('likes.post_id', $pids);
$query = $this->db->get();
foreach ($query->result() as $row)
{
$likes[]=$row;
}
//die(print_r($likes));
return $posts;
}
E, sad, ovo (nizove $likes i $posts, a bice ih jos, treba to spojiti sa komentarima) bi trebalo poslati kontroleru, a onda i proslediti u view... medjutim, ne znam kako to da uradim... ono sto hocu da dobijem, osim broja lajkova, jeste i opcija 'unlike' ukoliko je korisnik vec lajkovao post, i imena korisnika koji su lajkovali post (ispis prvih nekoliko, pop up/druga strana otvara ostatak imena, je li...)...
probao sam sa array_merge, medjutim ne ide...