| 제목 | CI 배열에 담기 | ||
|---|---|---|---|
| 글쓴이 | 루비콘 | 작성시각 | 2016/01/26 10:31:08 | 
|  | |||
| CI를 사용해서 디비에 저장된 값을 불러오려고 하는데 질문있습니다. 
 그전까지는 
<?php
	if(count($result)){
		foreach($result as $list){
?>
	<center class="edu_input01">
		<strong >[<?=@$list['pname']?>]</strong>님이 작성하신 게시글입니다.
	</center><br>
		<tr>
			<td class="edu_input03">
				*학원명
					<?=@$list['ename']?>
			</td>
			<td class="edu_input03">
				원장성명
					<?=@$list['pname']?>
			</td>
		</tr>
		<tr>
			<td class="edu_input03">
				*휴대 전화
					<?=@$list['etcOption']['pnum1']?> -
					<?=@$list['etcOption']['pnum2']?> -
					<?=@$list['etcOption']['pnum3']?>
			</td>
			<td class="edu_input03">
				일반 전화
					<?=@$list['etcOption']['num1']?> -
					<?=@$list['etcOption']['num2']?> -
					<?=@$list['etcOption']['num3']?>
			</td>
		</tr>
 이런식으로 뷰단에서 foreach 문을 사용해서 출력을 시켰습니다만 
 foreacch 문을 사용하지 않고 
 예를 들면 <?=@$viewData['ename']?> <?=@$viewData['etc_option']['pnum1']?> 이런식으로 사용하려면 어떻게 하는게 좋을까요 
 지금상태로는 foreach 문을 사용해야만 값을 출력 할 수 있습니다. 
 컨트롤러 
		//게시글 수정
		if($urlArray['nextMode']=="mod")
		{
			$data['admin'] = $this->CI->dgc_edu_trade_1_0_m->admin_list_product($admin);
			$data['viewData'] = $this->CI->dgc_edu_trade_1_0_m->readlist($urlArray['no']);
			$data['view'] = "user_list_update_v";
			return $this->render($data);
		}
 모델단 
	function readlist($no){
	
		$this->db->select("a.*, b.product_name");
		$this->db->from("dgc_edu_trade_1_0 AS a");
		$this->db->join("dgc_edu_trade_product AS b","a.product_no = b.no");
		$this->db->where("a.no",$no);
		$result = $this->db->get()->result_array();
//		echo "<pre>";
//		print_r($result);
//		echo "</pre>";
		//etcOption 처리
	foreach($result as $key=>$list){
		$result[$key]['etcOption'] = unserialize($list['etc_option']);
	}
		return $result;
	}
 이런식으로 코드는 있습니다만 도와주시면 감사하겠습니다. 
 마지막으로 불러온 값이 이런식으로 출력된다는걸 보여드리고 싶어서 첨부 합니다. | |||
| 다음글 | ci chapter7 사용자 인증(로그인) 문의 (3) | ||
| 이전글 | 뷰단에서 출력이 왜 안되는지 이유를 모르겠습니다. (1) | ||
| 
                                변종원(웅파)
                                /
                                2016/01/26 16:15:16 /
                                추천
                                0
                             | 
| 
                                루비콘
                                /
                                2016/01/26 16:43:21 /
                                추천
                                0
                             //웅파 그래서 row_array 에 담았더니 결과가 이상하게 나옵니다 ㅠ | 
| 
                                루비콘
                                /
                                2016/01/26 16:51:33 /
                                추천
                                0
                             
 [no] => 4
            [pwd] => 23
            [ename] => 23
            [pname] => 23
            [num] => 31
            [addr] => ��기 화성시 장안면 어은리 3
            [school] => 44
            [title] => 23
            [product_no] => 
            [area_group] => 계양구
            [deposit] => 231
            [rental] => 231
            [list] => 23
            [etc_option] => :36:{s:4:"name";s:3:"123";s:5:"pname";s:3:"123";s:5:"pnum1";s:3:"131";s:5:"pnum2";s:2:"23";s:5:"pnum3";s:3:"123";s:4:"num1";s:3:"123";s:4:"num2";s:3:"123";s:4:"num3";s:3:"123";s:8:"postcode";s:5:"18584";s:7:"address";s:38:"경기 화성시 장안면 어은리 3";s:8:"address2";s:3:"123";s:6:"school";s:3:"444";s:5:"title";s:3:"123";s:5:"group";s:1:"3";s:5:"sido1";s:15:"인천광역시";s:6:"gugun1";s:9:"계양구";s:5:"aaaaa";s:15:"인천광역시";s:5:"floor";s:3:"123";s:9:"sub_floor";s:3:"123";s:6:"pyeong";s:3:"123";s:10:"sub_pyeong";s:3:"123";s:7:"deposit";s:4:"1231";s:6:"rental";s:4:"1231";s:8:"p_school";s:3:"123";s:10:"ele_school";s:3:"123";s:10:"mid_school";s:3:"123";s:9:"hi_school";s:3:"123";s:10:"uni_school";s:3:"123";s:5:"sales";s:3:"123";s:6:"profit";s:3:"123";s:7:"radio01";s:3:"유";s:3:"car";s:3:"123";s:7:"premium";s:3:"123";s:4:"list";s:3:"123";s:3:"pwd";s:3:"123";s:11:"main_submit";s:6:"확인";}
            [reg_date] => 016-01-26 14:47:15
            [product_name] => 3
        )
)
 이런식으로 빠지는 값도 생기고 값또한 이상하게 불러옵니다 ㅠ | 
| 
                                변종원(웅파)
                                /
                                2016/01/26 16:55:07 /
                                추천
                                0
                             몇번째 데이터를 사용하고 싶은건지 모르니 row_array()를 사용하라고 말씀드린거구요. 
 어떤 목적으로 그렇게 작업하시려는건데요? 
 리스트는 당연히 result_array()로 불러와야 여러 개를 출력할 수 있고 row_array()는 하나의 결과만 가져오는 거구요. 
 만약 어떤 종합결과를 뷰 상단에 출력하고 하단에 리스트 형태로 출력을 해야하는 것이면 따로 데이터를 가져와서 사용해야 합니다. 
 윗단은 row_array()로 아래 리스트는 result_array()로. 
 | 
| 
                                루비콘
                                /
                                2016/01/26 17:01:24 /
                                추천
                                0
                             제가 하려고 하는건 그냥 사용자 페이지 입니다. 게시글을 등록하고 사용자가 입력한 게시글을 보는 그런 사용자 페이지 인데 ㅠㅠㅠ 그래서 row_array 를 사용해야 하는게 맞는거 같은데 애매하네요 ㅠㅠ하루종일 고민하고있지만 ㅠㅠ 그전까지는 result_array 로 그냥 불러와서 foreach 써서 자동으로 [0]번째 값 체크하게 해서 뿌려줬었는데 
 foreach 를 사용하지 않고 db에서 있는그대로 불러와서 출력을 해보고 싶어서 이렇게 하고 있습니다. | 
| 
                                한대승(불의회상)
                                /
                                2016/01/26 17:06:22 /
                                추천
                                0
                             db에 있는 그대로 불러 온다는게 어떤 의미 인가요? | 
| 
                                루비콘
                                /
                                2016/01/26 17:11:21 /
                                추천
                                0
                             그러니까 row_array()만 똑바로 불러오면 될거 같은데 그게 어디서 꼬여버린건지 참 막막하네요 ㅋㅋㅋ 그냥 말씀드린것처럼 row_array를 사용해서 db에서 긁어온 한줄을 그대로 사용하고 싶은겁니당! 
 | 
| 
                                루비콘
                                /
                                2016/01/26 17:17:50 /
                                추천
                                0
                             아 방금 해결 되었습니다 etc_option 이 문제였네요 ㅠㅠ $result['etc_option'] = unserialize(@$result['etc_option']); 이렇게 수정하니까 정상 출력 됩니다 ㅎㅎㅎ 웅파님 언제오시나 ㅠㅠㅠㅠ 하루종일 노심초사 했었는데 감사합니다 ㅠㅠㅠ | 
저번에도 답변했던 것 같습니다만.. ^^;
데이터베이스 매뉴얼에서 result_array()와 row_array() 찾아서 비교해보세요.