php – 无法使用ajax将数据插入数据库
发布时间:2020-12-13 17:50:20 所属栏目:PHP教程 来源:网络整理
导读:我是 jquery和ajax的新手,现在我很难在使用ajax和codeigniter将数据插入数据库时??找到解决这个问题的方法. 所有错误都没问题,但是当表单上没有错误时,我收到数据库错误,所有输入都变为NULL. 调节器 public function add () { $this-load-model('user_model'
我是
jquery和ajax的新手,现在我很难在使用ajax和codeigniter将数据插入数据库时??找到解决这个问题的方法.
所有错误都没问题,但是当表单上没有错误时,我收到数据库错误,所有输入都变为NULL. 调节器 public function add () { $this->load->model('user_model'); $data => array ( 'first_name' => $this->input->post['first_name'],'last_name' => $this->input->post['last_name'],'active' => $this->input->post['active'],'date_registered' => date('Y/m/d h:i:sa') ); // assume validation rules are already set. if ($this->form_validation->run() == FALSE) { $result['message'] = validation_errors(); } else { $result['data'] = $this->user_model->save($data); } } Ajax 1: $(document).ready(function() { $('#create-user').click( function(e) { var is_valid = false; var form_id = '#'+ $(this).parents('form').attr('id'); // Validate required fields are not blank // do a js validation? // Apply action if(is_valid) { var add_result = do_submit(form_id); } else { $('#error-msg').html(result.message); // if form is not valid } }); }); Ajax 2: function do_submit(form_id) { var url = $(form_id).attr("action"); var ajax_result = false; var formData = {}; // Submit form using ajax ajax_result = $.ajax({ type: "POST",url: url,data: $(form_id).serialize(),dataType: 'json',success: function(result) { // return result; // do something console.log(result); if (result.data) { make_alert(); } },error: function(textStatus) { /* Note: decide how all errors should be shown. */ swal({ title: "Error!",text: "Oops,something went wrong. Check fields and try again.",type: "error" }); } }); return ajax_result; } // End do_submit() 解决方法
要在codeigniter中获取发布数据,我们使用
$this->input->post('field_name'); 所以你需要将所有帖子[‘field_name’]更改为post(‘field_name’) 你的最终代码是 $this->load->model('user_model'); $data => array ( 'first_name' => $this->input->post('first_name'),'last_name' => $this->input->post('last_name'),'active' => $this->input->post('active'),'date_registered' => date('Y/m/d h:i:sa') ); 阅读https://www.codeigniter.com/user_guide/libraries/input.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |