2016-11-12 41 views
2

我試了下面的代碼。Codeigniter插入不工作發生數據庫錯誤

class Vendor extends CI_Controller{ 

    function __construct(){ 
     parent::__construct(); 
    } 

    public function vendor_add(){ 
      $this->load->helper('url'); 
      $this->load->view('header'); 
      $this->load->view('sidebar'); 
      $this->load->view('add_vendor'); 
      $this->load->view('footer'); 
    } 
     public function save(){ 
      $this->load->helper(array('form','url')); 
      $this->load->model('Save_vendor'); 
      $vendor_data = array(
         'ven_name'=> $this->input->post['firstName'], 
         'ven_shop'=>$this->input->post['companyName'], 
         'ven_email_id'=>$this->input->post['email'], 
         'ven_contactno'=>$this->input->post['contactno'], 
         'ven_othercontactno'=>$this->input->post['contactno2'], 
         'ven_commission'=>$this->input->post['assigncommission'], 
         'ven_accname'=>$this->input->post['bankaccname'], 
         'ven_accountno'=>$this->input->post['bankaccno'], 
         'ven_ifsccode'=>$this->input->post['ifsccode'], 
         'ven_type'=>$this->input->post['optionsRadios'] 
        ); 

      $this->Save_vendor->vendor_insertdata($vendor_data); 

      redirect(base_url().'/vendor/vendor_add'); 
     } 
    } 

/* Model File */ 

    class Save_vendor extends CI_Model{ 
     public function vendor_insertdata($vendor_data){ 
     $this->db->insert('tbl_vendor',$vendor_data); 
    } 

/* VIew FIle */ 
    <!-- BEGIN CONTENT --> 
    <div class="page-content-wrapper"> 
     <div class="page-content"> 

      <!-- END SAMPLE PORTLET CONFIGURATION MODAL FORM--> 

      <!-- BEGIN PAGE HEADER--> 
      <h3 class="page-title"> 
      Add Vendor <small> Add New Vendor</small> 
      </h3> 


      <div class="row"> 

      <div class="col-md-12"> 

          <div class="portlet-body form"> 
         <?php echo base_url();?> 
           <!-- BEGIN FORM--> 
           <form action="<?php echo base_url("index.php/Vendor/save") ?>" class="horizontal-form" method="post"> 
           <div class="form-body"> 
            <h3 class="form-section">Add Vendor</h3> 
            <div class="row"> 
            <div class="col-md-12"> 
             <div class="form-group"> 
              <div class="radio-list"> 

              <label class="radio-inline"> 
              <input type="radio" name="optionsRadios" id="1" value="1" checked> Shop Vendor </label> 
              <label class="radio-inline"> 
              <input type="radio" name="optionsRadios" id="2" value="2"> Vendor </label> 
              </div> 
             </div> 
             </div> 
             <!--/span--> 
             <div class="col-md-4"> 
             <div class="form-group"> 
              <label class="control-label">Vendor Name<span class="required">*</span></label> 
               <input type="text" id="firstName" class="form-control" name="firstName"> 

              </div> 
             </div> 
             <div class="col-md-4"> 
             <div class="form-group"> 
              <label class="control-label">Company/Shop/Business Name<span class="required">*</span></label> 
               <input type="text" id="companyName" class="form-control" name="companyName" > 
              </div> 
             </div> 
             <div class="col-md-4"> 
             <div class="form-group"> 
              <label class="control-label">Email Id<span class="required">*</span></label> 
               <input type="text" id="email" class="form-control" name="email"> 
              </div> 
             </div> 
             <div class="col-md-3"> 
             <div class="form-group"> 
              <label class="control-label">Contact No<span class="required">*</span></label> 
               <input type="text" id="firstName" class="form-control" name="contactno" > 

              </div> 
             </div> 
             <div class="col-md-3"> 
             <div class="form-group"> 
              <label class="control-label">2nd Contact No</label> 
               <input type="text" id="firstName" class="form-control" name="contactno2"> 

              </div> 
             </div> 

               <div class="col-md-3"> 
             <div class="form-group"> 
              <label class="control-label">PIN Code<span class="required">*</span></label> 
              <input type="text" id="pincode" class="form-control" name="pincode" > 


              </div> 
             </div> 

             <div class="col-md-3"> 
             <div class="form-group"> 
              <label class="control-label">Assign Commision %<span class="required">*</span></label> 
               <input type="text" id="assigncommission" class="form-control" name="assigncommission"> 


              </div> 
             </div> 
             <div class="col-md-3"> 
             <div class="form-group"> 
              <label class="control-label">BANK Account Name<span class="required">*</span></label> 
               <input type="text" id="firstName" class="form-control" name="bankaccname" > 


              </div> 
             </div> 
              <div class="col-md-3"> 
             <div class="form-group"> 
              <label class="control-label">Account Number<span class="required">*</span></label> 
               <input type="text" id="bankaccno" class="form-control" name="bankaccno" > 
              </div> 
             </div> 
              <div class="col-md-3"> 
             <div class="form-group"> 
              <label class="control-label">IFSC Code<span class="required">*</span></label> 
               <input type="text" id="ifsccode" class="form-control" name="ifsccode"> 
              </div> 
             </div> 
             </div> 
             <div class="form-actions right"> 
                   <button type="submit" class="btn yellow-crusta"> Add Vendor</button> 
             </div> 
           </form> 
     </div> 
         </div> 

    </div> 
    <!-- END CONTENT --> 
    </div> 
<!-- END CONTAINER --> 

上面的代碼,但它會給出一個錯誤發生數據庫錯誤。列名不爲空。我是codeigniter的初學者,請爲它提供任何建議。

我想在我的數據庫中添加數據,但它不工作。

+0

列名不爲空意味着您需要傳遞所有輸入或ALTER表並允許它們爲null – devpro

回答

1

檢查您要在其中插入值的表「tbl_vendor」。一個或多個字段被定義爲NOT NULL意味着它不會接受空值。您必須將值傳遞到標記爲NOT NULL的字段。

0

請首先閱讀Codeigniter Query Builder reference。你犯了很大的錯誤。您的代碼應如下所示:

$vendor_data = array(
         'ven_name'=> $this->input->post['firstName'], 
         'ven_shop'=>$this->input->post['companyName'], 
         'ven_email_id'=>$this->input->post['email'], 
         'ven_contactno'=>$this->input->post['contactno'], 
         'ven_othercontactno'=>$this->input->post['contactno2'], 
         'ven_commission'=>$this->input->post['assigncommission'], 
         'ven_accname'=>$this->input->post['bankaccname'], 
         'ven_accountno'=>$this->input->post['bankaccno'], 
         'ven_ifsccode'=>$this->input->post['ifsccode'], 
         'ven_type'=>$this->input->post['optionsRadios'] 
        ); 

        $this->db->insert('your_table_name', $vendor_data);