오늘 Codeigniter로 인해 로직 문제가 발생했습니다. 4 시간 후에, 나는 여기서 더 잘 물어야한다고 생각했다.Codeigniter :보기에서 컨트롤러 기능을 호출해야합니다.
이내 프로젝트 메인 페이지에 포함 된 :
- 최고 게시물 (속성 : 제목, 로고, 발췌) 각 포스트에 대한
- 최고 논평은 (속성 : 회원 이름, 아바타)
내 문제는 각 게시물에 대한 최고 해설을 얻는 것입니다.
<?php
foreach($posts as $post) {
echo 'Post Title: '.$post['title'].'<br/>';
$top_commenters = $this->get_top_commenters($post['id']);
foreach($top_commenters as $commenter) {
echo '<img src="'. $commenter['avatar'] .'"/><br/>';
}
}
?>
난 당신이 내가 상단 덧글을 얻기 위해, 함수에 각 포스트의 ID를 전달하고 있습니다 것으로 나타났습니다 생각 : 내가 코드 점화를 사용하지 않는 경우
이 내가 그것을 할 것입니다 방법이다. 그러나 CodeIgniter에서는 뷰에서 컨트롤러를 호출 할 수 없습니다.
내가 사용할 마지막 솔루션은 Ajax입니다. 하지만 여기서 도움을 얻을 수 있기를 바랍니다.
미리 감사드립니다.
UPDATE :
//Model Function
function get_popular_posts() {
$row = $this->db->query('
SELECT * FROM posts
INNER JOIN popular_posts ON posts.id = popular_posts.pid
ORDER BY rank DESC LIMIT 6
');
return $row->result_array();
}
//Model Function
function get_top_commenters($post_id){
$row = $this->db->query('
SELECT *
FROM users
WHERE username
IN (
SELECT username
FROM comments WHERE pid = '. $post_id .')
ORDER BY likes DESC LIMIT 6
');
return $row->result_array();
}
게시물을받는 데 사용하는 컨트롤러와 모델 기능을 나에게 보여줄 수 있습니까? – bottleboot
왜 http://stackoverflow.com/questions/9986520/how-to-call-codeigniter-controller-function-from-view?rq=1 및 http://stackoverflow.com/questions/16366130/calling- a-controller-function-from-a-view-in-codeigniter? rq = 1 및 http://stackoverflow.com/questions/11682604/how-to-call-function-of-controller-in-view-using- codeignator 귀하의 질문에 대답 해달라고. – Gordon
나는 그 이유를 안다! 하지만 주위에 도움이 필요합니다. – Sobiaholic