2017-12-31 22 views
1

이상한 문제가 있습니다. 양식에서 컨트롤러로 데이터를 전달할 수 없습니다. 내 코드가 옳다고 생각하지만 데이터가 전달되지 않는 이유를 모르며 항상 실패했습니다. 내가 게시 한 데이터를 인쇄하려고했지만 '데이터 없음'이라고 표시됩니다. 아마도 내가하는 일을 잊어 버렸습니다. 도와 주실 수 있습니까?보기에서 컨트롤러로 데이터를 전달할 수 없습니다.

여기 내 코드의

보기 코드 :

<div id="register" class="text-center"> 
    <div class="container"> 
    <div class="section-title center"> 
     <h2>Register</h2> 
     <hr> 
     <form action="<?php echo base_url('c_register/do_insert'); ?>" method="post"> 
     <link href="<?php echo base_url();?>assets/user/css/login.css" rel="stylesheet"> 
     <input type="text" name="firstname" id="firstname" placeholder="First Name"> 
     <span class="text-danger"> <?php echo form_error("firstname"); ?></span> 
     <input type="text" name="lastname" id="lastname" placeholder="Last Name"> 
     <span class="text-danger"> <?php echo form_error("lasttname"); ?></span> 
     <input type="text" name="fullname" id="fullname" placeholder="Full Name"> 
     <span class="text-danger"> <?php echo form_error("fullname"); ?></span> 
     <input type="text" name="username" id="username" placeholder="Username"> 
     <span class="text-danger"> <?php echo form_error("username"); ?></span> 
     <input type="text" name="email" id="email" placeholder="Email"> 
     <span class="text-danger"> <?php echo form_error("email"); ?></span> 
     <input type="password" name="pass" id="pass" placeholder="Password"> 
     <span class="text-danger"> <?php echo form_error("pass"); ?></span> 
    <!-- <input type="password" name="pass1" placeholder="Retype Password"> --> 
     <ul> 
     <p1>Gender</p1> 
     <select name="gender" id="gender" class="pilihan"> 
     <span class="text-danger"> <?php echo form_error("gender"); ?></span> 
     <option value="men">Male</option> 
     <option value="women">Female</option></select> 
     </ul> 
     <ul> 
     <p1>Occupation</p1> 
     <li><input type="radio" name="job" value="doctor" id="doctor" checked> Doctor<br></li> 
     <span class="text-danger"> <?php echo form_error("job"); ?></span> 
     <li><input type="radio" name="job" value="nurse" id="nurse"> Nurse<br></li> 
    </ul> 
     <link rel="stylesheet" type="text/css" href="assets/user/login.css"> 
     <a href="<?php echo base_url('c_register/do_insert'); ?>" class="btn btn-primary btn-lg active" role="button">Primary link</a> 
    </form> 

내 컨트롤러 코드 :

<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class C_register extends CI_Controller { 

    function __construct(){ 
     parent::__construct(); 
     $this->load->model('m_register'); 
    } 

    // function index() 
    // { 
    // $this->template->load('static','register'); 
    // } 

    function do_insert(){ 
     // $this->load->helper('form'); 
     $this->load->library('form_validation'); 

     $this->form_validation->set_rules('firstname', 'firstname', 'required'); 
     $this->form_validation->set_rules('lastname', 'lastname', 'required'); 
     $this->form_validation->set_rules('fullname', 'fullname', 'required'); 
     $this->form_validation->set_rules('username', 'username', 'required'); 
     $this->form_validation->set_rules('email', 'email', 'required'); 
     $this->form_validation->set_rules('pass', 'pass', 'required'); 
     $this->form_validation->set_rules('gender', 'gender', 'required'); 
     $this->form_validation->set_rules('job', 'job', 'required'); 
     if ($this->form_validation->run()) { 
      //true 
      $data = array(
      'firstname' => $this->input->post('firstname'), 
      'lastname' => $this->input->post('lastname'), 
      'fullname' => $this->input->post('fullname'), 
      'username' => $this->input->post('username'), 
      'email' => $this->input->post('email'), 
      'pass' => $this->input->post('pass'), 
      'gender' => $this->input->post('gender'), 
      'job' => $this->input->post('job') 
      ); 
      $this->m_register->InsertData($data); 
      echo "success"; 
     } else { 
      //false 
      // $this->index(); 
      echo "failed"; 
     } 
    } 
?> 

내 모델 코드 : 현재 구현

<?php 
defined('BASEPATH') OR exit('No direct script access allowed'); 

class M_register extends CI_Model { 

    public function InsertData($data){ 
     $this->db->insert("member", $data); 

    } 

    } 
?> 
+0

var_dump($_POST);를 수행하여 포스트 데이터를 볼 수는 ('인 print_r를 사용하여 데이터를 게시 $ _POST); die();'. 게시 된 데이터 중 일부 또는 전부를 가져 옵니까? –

답변

0

, 당신은 숨겨진 n 오류가 발생할 수 있습니다.

그래서 빨리, 당신은 너무 당신이 무슨 일이 일어나고 있는지 볼 수있다, 폼 헬퍼를로드하고 유효성 검사를 실행하기 직전 라인을

echo validation_errors(); 

를 추가 할 필요가 그들을 볼 수 있습니다.

또는 당신이 ($ this-> form_validation-> 실행()) {`선, 캡처하려고하면`전에 같은 위치

관련 문제