CI 묻고 답하기

제목 _remap과 $data 질문드립니다.
글쓴이 멜로우모카 작성시각 2016/02/05 02:13:41
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 13742   RSS

hook으로 레이아웃을 만든다음에

 

반복되는 데이터를 remap으로 넣으려고 합니다.

 

	public function _remap($method){
		
		$user_pk = $this->session->userdata('login_user_pk');
	
		$data['total_status'] = $this->status_load->get_total_status();


		$this->load->view('header_v'); //헤더
		$this->{"{$method}"}(); //화면 왼쪽영역
		$this->load->view('status_v', $data); //사이드바 (화면 오른쪽영역)
	}

	function index(){
		$this->load->view('main_v');
	}
	

	
	
	function my_item(){
		$this->load->model('item_m');
		$data['item_list'] = $this->item_m->load_item();
		
		$this->load->view('item_v', $data);
	}

 

지금 소스가 

remap을 사용해서 헤더와 사이드바 부분을 모든 페이지에 띄우려고 합니다.

사이드바 부분에서 DB에서 가져온 데이터($data['total_status'])를 뿌려주는데 

이 데이터를 my_item이라는 페이지에서도 사용하려고 item_v라는 뷰파일에서 $total_status->user_name 이런식으로 사용했더니 total_status가 undefined로 에러가납니다.

my_item에서 만든 $data['item_list']는 사용되는것 같은데..

 

remap이라는게 remap안에 써놓은 코드들이 각 함수마다 다 넣어주는줄 알았는데 그게 아닌가 봅니다;; 잘이해를 못하겠습니다.

 

어떻게해야 remap에서 만든 data를 각페이지마다 다 불러와서 사용할수 있나요??

 

 

 

 다음글 코딩 앞에 공백이 무조건 들어갑니다... (1)
 이전글 컨트롤러에서 post값 사용 (2)

댓글

변종원(웅파) / 2016/02/05 07:52:52 / 추천 0

_remap 안에서 $this->data['total_status'] 라고 선언하고 $this->data 라고 사용하시면 됩니다.

 

한대승(불의회상) / 2016/02/05 08:01:22 / 추천 0

$this->load->vars($data); 를 사용하여 전역으로 데이터를 설정 할 수도 있습니다.

멜로우모카 / 2016/02/05 10:43:21 / 추천 0

$this->load->vars($data); 이용하니까 해결이 되네요 감사합니다.

 

그런데 변종원님이 말씀하신건 어떻게 사용하는지 이해를 못하겠습니다 ㅜㅜ;;

변종원(웅파) / 2016/02/05 15:48:09 / 추천 0

멜로우모카/ $this 객체로 선언하여 사용하시는 건데요... php class 문법을 참고하셔야 할것 같습니다.