CI 묻고 답하기

제목 컨트롤러에서 post값 사용
글쓴이 함박눈 작성시각 2016/02/04 14:47:29
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 13405   RSS

select box에서 선택한 값을 insert하려 합니다. 

그런데 지금 구조가 view에서는 자바스크립트로 키값만 받아와 컨트롤러에서 while문으로 처리하기 때문에 

컨트롤러에서 모델로 post를 어떻게 전달해야 할지 모르겠습니다ㅠ 

 

//view페이지의 자바스크립트 

function s_show_exempt(pnum,nkey){
		//alert(nkey);
		page_list("list_master","/act_popup/popup_form/"+pnum+"/","exempt_div_"+nkey);
	}		
	function s_show_exempt2(pnum,rkey,nkey){
		//alert(nkey);
		page_list("list_master","/act_popup/popup_form2_"+rkey+"/"+pnum+"/","exempt2_div_"+nkey);
	}		
	function s_show_exempt3(pnum,rkey,nkey){
		//alert(nkey);
		page_list("list_master","/act_popup/popup_form3_"+rkey+"/"+pnum+"/","exempt3_div_"+nkey);
	}		

 

//컨트롤러의 while문

while(list($key,$val)=each($data['lists'])){
			$rohs_m3 = $this->DefineVar->rohs_in_type3("","select","onchange=s_show_exempt(this.value,$key)","rohs_m3");
			
			
			if($key == "0"){
				$rkey = "1";
				$rohs_m4 = $this->DefineVar->rohs_in_type4_1("","select","onchange=s_show_exempt2(this.value,$rkey,$key)","rohs_m4_1");
			}elseif($key == "1"){
				$rkey = "2";
				$rohs_m4 = $this->DefineVar->rohs_in_type4_2("","select","onchange=s_show_exempt2(this.value,$rkey,$key)","rohs_m4_2");
			}elseif($key == "2"){
				$rkey = "3";
				$rohs_m4 = $this->DefineVar->rohs_in_type4_3("","select","onchange=s_show_exempt2(this.value,$rkey,$key)","rohs_m4_3");
			}elseif($key == "3"){
				$rkey = "4";
				$rohs_m4 = $this->DefineVar->rohs_in_type4_4("","select","onchange=s_show_exempt2(this.value,$rkey,$key)","rohs_m4_4");
			}elseif($key == "4" || $key == "5"){
				$rkey = "5";
				$rohs_m4 = $this->DefineVar->rohs_in_type4_5("","select","onchange=s_show_exempt2(this.value,$rkey,$key)","rohs_m4_5");
			}else{
				$rkey = "6";
				$rohs_m4 = $this->DefineVar->rohs_in_type4_6("","select","onchange=s_show_exempt2(this.value,$rkey,$key)","rohs_m4_6");
			}

 

뷰와 컨트롤러의 일부 소스입니다.

뷰에서 자바스크립트를 쓰는 구조라 포스트를 어떻게 생성해서 모델로 넘겨줘야 할지 모르겠습니다 흑ㅠ 

선배님들 도와주세요~ㅠ

 

 

 

 다음글 _remap과 $data 질문드립니다. (4)
 이전글 반복문으로 db 입력 질문 한번만 더드리겠습니다. (2)

댓글

kaido / 2016/02/04 14:57:09 / 추천 0

가장 무식 단순한 방법은

 

컨트롤러에서

 

echo " [script] [/script] ";

 

실행 됩니다.

 

view 에서 액션이 나오면 그걸 받아서 처리 하는 구조이면 ajax 사용 하시면 됩니다.

 

 

플로우를 시작부터 끝까지 잘 설명해서 질문해 주시면 더욱 알맞는 답변을 들으실 수 있습니다.

 

 

 

함박눈 / 2016/02/04 15:49:00 / 추천 0

@// kaido

답글 감사합니다 :)

현재 select box의 값이 숫자로 지정되어 있고 그 중 하나를 선택하면 view의 "exempt_div_"+nkey를 타고 컨트롤러의 div id로 전달되는 구조입니다. 

아래 소스는 컨트롤러의 div id부분입니다.

 

 $list_tr .="       
      <tr>
       <td align=center>".$val['rd_num']."</td>
      <td>".$val['rohs_name']."</td>
      <td>".$rohs_m3 ."<div id='exempt_div_$key'></div></td>
      <td>".$rohs_m4."<div id='exempt2_div_$key'></div></td>
      <td>".$rohs_m5_1."<div id='exempt3_div_$key'></div></td>
      
     </tr>";