Codeigniter - 通过AJAX& amp;添加到数据库时的内部服务器错误500 jQuery的

时间:2018-03-08 21:04:41

标签: php jquery mysql ajax codeigniter

我在向数据库添加大量内容时遇到问题,内容在WYSIWYG编辑器中,我想要发生的是单击保存按钮,内容通过jquery / ajax函数传递给控制器并保存到我的数据库供以后使用..

我的数据库中的表是模板样式的模板,我想存储内容,自动递增的主键,以及Userstempid,它是当前登录的用户外键ID到模板

当我点击保存按钮时,我在控制台中收到内部服务器错误500,任何帮助都将受到大力赞赏

我是codeigniter的新手,所以我不确定我的查询等是否存在问题或者是不同的

我的观点 - 所见即所得的编辑器是trumbowyg-demo& jquery ajax

<h5> Design Your Email </h5>
            <p>Use the editor below to design and fill in your email's content</p>
          <div id="trumbowyg-demo"></div>
          <h2 class="center light-blue-text">

 <button class="btn waves-effect waves-light center-align" type="submit" id="saveContent">Save Current Content
                      <i class="material-icons right">note_add</i>
   </button>



    $(document).ready(function(){

      $("#saveContent").click(function () {
          var content = $("#trumbowyg-demo").html();
          $.ajax({
              type: 'POST',
              url: "<?php echo site_url(); ?>/Dashboard/add",
              data: {
                  content: content
              },
              dataType: 'json',
              success: function (data) {
                  if (data.status == 'error') {
                      alert('An error occured: ' + data.msg);
                  } else {
                      alert(data.msg)
                  }
              }
          });
      });

我的控制器 - Dashboard.php

        public function add(){

    $this->load->model('template_model');
        $this->template_model->AddTemplate();

         }

我的模型 - Template_model.php

    class Template_model extends CI_Model {


      Public function AddTemplate(){
        $content = $this->input->post('templatestyle');,
        $user_id = $this->session->userdata('users_temp_id');
         $this->db->insert('templates', array('templatestyle' =>$content, 'users_temp_id'=>$user_id));
    }

1 个答案:

答案 0 :(得分:0)

首先创建数组(insert_data)并将其作为参数传递

// your are sending 'content' not 'templatestyle' in ajax request
$content = $this->input->post('templatestyle');

// use this
$content = $this->input->post('content');
$user_id = $this->session->userdata('users_temp_id');
$insert_data = array(
                    'templatestyle'     => $content,
                    'users_temp_id' => $user_id,
                  );
$this->db->insert('templates',$insert_data);