제목 | ajax , json 통신 문제 | ||
---|---|---|---|
글쓴이 | 헤덥 | 작성시각 | 2014/08/07 16:20:07 |
|
|||
/////////////input tag//////////// <input type="text" class="form-control" id="email" name= "email" placeholder="email을 입력해 주세요." value="" /><i class="icon-envelope"></i> <input type="text" class="form-control" id="name" name= "name" placeholder="이름을 입력해 주세요." value="" /><i class="icon-user"></i> <input type="password" class="form-control" id="password" name="password" placeholder="비밀번호를 입력해 주<input type="password" class="form-control" id="password_c" name="password_c" placeholder="비밀번호를 확인을 입력해 주세요." value="" /><i class="icon-lock"></i>세요." value="" /><i class="icon-lock"></i> 4개 값을 입력 ///////////ajax 통신/////////////// <script type="text/javascript"> $(function(){ $('#register').on('click', function(){ var ajax_data = {"email" : $('#email').val(), "name" : $('#name').val(), "password" : $('#password').val(), "password_c" : $('#password_c').val(), "csrf_test_name" : $("input[name=csrf_test_name]").val() } alert( $('#email').val() + '/' + $('#name').val()); $.ajax({ type : 'post', dataType: 'json', url : "/my/member/ajax_register", data : ajax_data, success : function (data) { alert("adfasdfasd"); } }); }); }); </script> ///////////컨트롤러 소스////////////////// public function ajax_register(){ // 폼 검증 라이브러리 로드 $this->load->library('form_validation'); $this->load->helper('json'); // 폼 검증할 필드와 규칙 사전 정의 $this->form_validation->set_rules('email', '이메일', 'required'); $this->form_validation->set_rules('name', '이름', 'required'); $this->form_validation->set_rules('password', '비밀번호', 'required'); $this->form_validation->set_rules('password_c', '비밀번호 확인', 'required'); if($this->form_validation->run() == TRUE ){ // form 유효성 검사 성공시 $email = trim($this->input->post('email', TRUE)); $name = trim($this->input->post('name', TRUE)); $password = trim($this->input->post('password', TRUE)); $password_c = trim($this->input->post('password_c', TRUE)); if($email AND $name AND $password AND $password_c) { //form 값 배열지정 $member_info = array('EMAIL' => $email, 'NAME' => $name, 'PASSWORD' => $password); //model 디비넣기 $result = $this->member_m->insert($member_info); if($result > 0){ //db 성공시 $this->output->set_header('Content-Type: application/json; charset=utf-8'); $json_data = array("error" => '0000' , "result" => $result); echo json_encode($json_data); }else{ //db 실패시 $this->output->set_header('Content-Type: application/json; charset=utf-8'); $json_data = array("error" => '0001' , "result" => $result); echo json_encode($json_data); } } }else{ // form 유효성 검사 실패시 $this->output->set_header('Content-Type: application/json; charset=utf-8'); $json_data = array("error" => '0002' , "result" => ""); echo json_encode($json_data); } } ajax 통신은 성공을 하나 컨트롤러의 코드를 구동을 못시키네요 db의 값을 못넣어요 json 값도 출력이 되질 않고요 ㅠㅠ 컨트롤러 코드로 ajax통신이 아닌 페이지 이동부분에선 db에 값이 제대로 들어갔었어요 model 문제는 아닌것 같고요 아 도저히 이유를 모르겠네요. |
|||
다음글 | 안녕하세요. if문 어떡해 사용할까 고민중입니다. (3) | ||
이전글 | 다른 주소로 리다이렉션 질문드립니다. (1) | ||
헤덥
/
2014/08/07 17:54:26 /
추천
0
|
kaido
/
2014/08/08 07:38:47 /
추천
0
수고하셨습니다 ^^
ajax는 익숙한 베터랑도 삽질 하게 만드는 녀석입니다. 잘 하는 방법은 경험밖에 없더군요. |
이렇게 해결했습니다 에휴...몇시간째 삽질을