제목 | 기초적인거 질문 드릴게요 ㅠㅠ.. | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
글쓴이 | jackie | 작성시각 | 2016/03/09 21:06:29 | ||||||||||||||||||||
|
|||||||||||||||||||||||
Table: feeds_category Columns:
Table: feeds_list Columns:
db로는 이렇게 둘을 가지고있구요, category_id별로 name을 보이고 category_id와 feed_category가 같은 feed_list->feed_title을 그 하위에 <li>로 넣으려고 하는데요 -------------- ex) 경제 -매일경제 -내일경제 -미래경제 사회 -다음사회 ----------------
해서 foreach 두번써서 하려니 에러가나서요. <ul class="list-group"> <?php foreach ($feeds_category as $feeds_category) { ?> <?=$feeds_category->category_name?> <?php foreach ($feeds_list as $feeds_list){ if($feeds_list->feed_category==$feeds_category->category_id){ ?> <li><a href="#"><?=$feeds_list->feed_title?></a></li> <?php } } ?> </ul> <?php } ?> =================================== 이렇게 하면 첫번째 category_id 는 feeds_list가 잘표현되는데, 두번째에는 Trying to get property of non-object 그다음부터는 Invalid argument supplied for foreach() 라는 에러가 떠서요. === 모델이고 function gets(){ return $this->db->query("SELECT * FROM feeds_list")->result(); } function gets(){ return $this->db->query("SELECT * FROM feeds_category")->result(); } === 컨트롤러입니다 function __construct(){ parent::__construct(); $this->load->database(); $this->load->model('feeds_list_model'); $this->load->model('feeds_category_model'); } public function index() { $this->_head(); $this->load->view('admin/main'); $this->load->view('admin/footer'); } function _head(){ $this->load->view('admin/head'); $feeds_list = $this->feeds_list_model->gets(); $feeds_category = $this->feeds_category_model->gets(); $this->load->view('admin/feeds_list',array('feeds_list'=>$feeds_list,'feeds_category'=>$feeds_category)); } ===
|
|||||||||||||||||||||||
다음글 | 이게.. CI문제인지, 아님 일반 Mysql 문제인지.... (5) | ||||||||||||||||||||||
이전글 | write 페이지와 update페이지를 코드값으로 구분... (1) | ||||||||||||||||||||||
한대승(불의회상)
/
2016/03/10 08:00:28 /
추천
0
|
Luj
/
2016/03/10 10:07:50 /
추천
0
category_id(11)와 feed_category(45) <--- 데이터 타입 맞춰주는게 좋을 것 같구요(category_id 받을 목적이시면) 굳이 View 페이지에서 뽑아야하는 이유 없으면, $result = $this->db->query("SELECT * FROM feeds_list"); foreach($result => $key as $val){ $result[$key]['media'] = array(); $result[$key]['media'] = $this->db->query("SELECT * FROM feeds_category where feed_category = ".$val['category_id']); // * 대신에 feed_title 만 해서 써도 될 듯..? } 이러면 $result 에 [n] - category_id, - category_name, - (array)media 이렇게 생긴 배열이 생기고, View에서는 $result for 문으로 돌리고 그 안의 feedslist 를 for 문을 돌려서 열어주면 될듯 허네요...ㅎ
|
jackie
/
2016/03/11 07:27:55 /
추천
0
두분다 정말 감사합니다!
|
아래처럼 수정해서 테스트 해보세요.