| 제목 | [예제] 폼검증 > 컨트롤러 (쓰기,수정 동시처리) | ||
|---|---|---|---|
| 글쓴이 | ci세상 | 작성시각 | 2010/02/18 16:32:47 | 
|  | |||
| 간만에 올려봅니다.^^ 1. 메뉴얼 : http://codeigniter-kr.org/user_guide/libraries/form_validation.html 2. 사용목적 : 쓰기와 수정을 하나의 메소드에서 처리하기 
function write_method()
{
	$mode = $this->common_model->seg_value('mode');
	$no = $this->common_model->seg_value('no');
			
	$this->_set_validation('write');	
			
	if ($this->form_validation->run() == FALSE)
	{
		if($mode == "modify")
		{
			$board_query = $this->db->query("select * from board where no='$no'");
			$board_data = $board_query>row_array();
			
			foreach($board_data as $key=>$value) :
				$data[$key] = $value;
			endforeach;				
			
			$this->load->view('write',$data);	
		} else {
			$this->load->view('write');
		}
		
	}
	else
	{
		
		$data = array(
				'id' => $this->input->post('id'),
				'title' => $this->input->post('title'),
				'memo' => $this->input->post('memo')
		);
		
		if($mode == "modify")
		{
			$this->db->where('no', $no);
			$this->db->update('board', $data); 
		} else {
			$this->db->insert('board', $data);
		}			
		// 완료처리
		redirect('board');	
	}	
}<별도정의>1. 세그먼트 찾기 ; $this->lib_model->seg_value 2. 폼검증 공용처리 : $this->_set_validation('write'); <소스설명> 1. 세그먼트에서 mode 값에 따라서 쓰기와 수정(m)을 구분 2. 게시판 고유번호는 no임 3. foreach 구문을 통하여 view로 넘길 data 배열을 자동으로 생성하여 줍니다. | |||
| 다음글 | [예제] 폼헬퍼 > 동적 다중셀렉트 (1단, 2단... (1) | ||
| 이전글 | [예제] 폼검증 > 콜백 | ||
| 
                                미드필드
                                /
                                2010/02/23 04:45:23 /
                                추천
                                0
                             
                                좋은예제 감사합니다. |