Codeigniter插入不工作发生数据库错误

时间:2016-11-12 08:52:42

标签: php mysql 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的初学者,请为此提出任何建议。

我想在我的数据库中添加数据。但它无法正常工作。

2 个答案:

答案 0 :(得分:1)

检查要插入值的表“tbl_vendor”。一个或多个字段定义为NOT NULL表示它不接受空值。您必须将值传递给标记为NOT NULL的字段。

答案 1 :(得分: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);