2016-05-31 18 views
2

mysql에 ajax 함수를 사용하여 양식을 제출하고 싶지만 mysql 테이블에 NULL 결과가 표시됩니다.자바 스크립트가 성공한 후에 데이터를 반환합니다.

 <h4 id="form">Data Personal</h4> 
 

 
          <div class="col-sm-4"> 
 
           <input type="email" class="form-control input-lg" id="email" name="email" placeholder="Email" required> 
 
          </div> 
 

 
          <div class="col-sm-4"> 
 
           <input type="text" class="form-control input-lg" id="from_nama" name="from_nama" placeholder="Nama" required> 
 
          </div> 
 

 
          <div class="col-sm-4"> 
 
           <input type="number" class="form-control input-lg" id="from_phone" name="from_phone" placeholder="Phone" required> 
 
          </div> 
 
          <div> 
 
           <input type="hidden" name="id" id="id" /> 
 
          </div> 
 
          <br> 
 
          <div class="row" align="center"> 
 
           
 
            <button id="pesan" type="button" class="btn btn-download btn-md" onclick=pesan()> 
 
            <span class="glyphicon glyphicon-send" aria-hidden="true" ></span> 
 
            Pesan 
 
            </button>
여기

컨트롤러입니다 :

function pesan() 
 
    { 
 
     email = $("#email").val(); 
 
     from_nama = $("#from_nama").val(); 
 
     from_phone = $("#from_phone").val(); 
 

 
     $.ajax 
 
     ({ 
 
      url : "<?php echo site_url('kirim/undangan')?>/", 
 
      type: "POST", 
 
      dataType: "JSON", 
 
      success: function(data) 
 
      {  
 
       $('#alert').show(); 
 
       $('#email'+data).html(data.email); 
 
       $('#from_nama'+data).html(data.from_nama); 
 
       $('#from_phone'+data).html(data.from_phone); 
 
      }, 
 
      error: function (jqXHR, textStatus, errorThrown) 
 
      { 
 
       alert('Error upload data'); 
 
      } 
 

 
     }); 
 
    }

그리고 형태 : 여기

내 자바 스크립트의

function undangan() 
 
\t { \t 
 
\t \t \t $email   = $this->input->post('email'); 
 
\t \t \t $from_nama \t \t = $this->input->post('from_nama'); 
 
\t \t \t $from_phone \t \t = $this->input->post('from_phone'); 
 

 
\t \t \t $data_user = array(
 

 
\t \t \t \t 'email' \t \t \t \t \t \t \t => $email, 
 
\t \t \t \t 'name'  \t \t \t \t \t => $from_nama, 
 
\t \t \t \t 'phone' \t \t \t \t \t \t => $from_phone, 
 
\t \t \t \t 'status'   \t \t \t \t => '0', 
 
\t \t \t \t 'unique_id' \t   \t \t => uniqid() 
 

 
\t \t \t ); 
 

 
      $this->load->model('excel'); 
 
      
 
\t \t \t $this->excel->tambahuser($data_user); 
 
     
 
\t \t \t 
 
\t \t $this->load->view('kirimundangan.php',$data); 
 
\t }

는 모델 :

function tambahuser($data_user) 
 
     { 
 
      $this->db->insert('request', $data_user); 
 
      $this->db->insert_id(); 
 
      
 
      foreach ($data_user as $key)  
 
      { 
 
       $data = array(
 
        
 
        'from_name'   => $this->input->post('from_nama'), 
 
        'from_phone'   => $this->input->post('from_phone') 
 
       ); 
 
      } 
 
       
 
     }

은 내가 성공 내부 코드를 작성에서 실수를 생각 : 기능 (데이터)를, 어떤 도움?

+1

이메일을 from_nama, from_phone을 아약스로 보내지 않으십니까? 그게 아무것도 DB에 저장하고 서버 측 코드를 추가 – Thorin

+0

위의 코드를 시도하지만 그것은 테이블의 모든 필드에 NULL을 제공합니다 : ( – may

+0

당신은 이메일 = $ ("# email")을 의미합니다. null? 자바 스크립트에 경고를 추가하면 서버 측 코드가 추가됩니다. – Thorin

답변

1

변경 peson의

function pesan() 
    { 
     var email = $("#email").val(), 
      from_nama = $("#from_nama").val(), 
      from_phone = $("#from_phone").val(); 

     $.ajax 
     ({ 
      url : "<?php echo site_url('kirim/undangan')?>/", 
      type: "POST", 
      dataType: "JSON", 
      data:{from_nama: from_nama, email: email, from_phone: from_phone}, 
      success: function(data) 
      {  
       $('#alert').show(); 
       $('#email'+data).html(data.email); 
       $('#from_nama'+data).html(data.from_nama); 
       $('#from_phone'+data).html(data.from_phone); 
      }, 
      error: function (jqXHR, textStatus, errorThrown) 
      { 
       alert('Error upload data'); 
      } 

     }); 
    } 

에 기능과 당신은뿐만 아니라 당신이 볼 수하지 JSON 데이터를 반환해야 거기에서 서버 측 코드를 변경해야합니다, 그래서 당신은 JSON 응답을 기대. 이게 당신에게 도움이 되었기를 바랍니다.

+0

이제 데이터가 데이터베이스에 업로드되었지만 오류 경고가 나타나는 이유는 무엇입니까? – may

+0

$ json = json_encode ($ data)와 같이 json을 사용하여 데이터를 반환해야합니다. then echo $ json; 성공 함수 안에 – Thorin

+0

? 또는 컨트롤러? – may

관련 문제