2013-01-24 62 views
0

我想输入一些数据,我通过jquery.post发布到服务器到数据库中。使用Codeigniter插入数据库

note = { // note object that will be sent to the server 
    title: $('input.xlarge').val(); , 
    message: $('textarea.xlarge').val(); , 
    } 

$.post(link + "cart/addtodb", note, 
      function(data){ 

      if(data == 'true'){ 
       alert('Your note has been saved'); 
      }else{ 
       alert("Something went wrong"); 
      } 

     }); 

这里是控制器我笨PHP代码的正在发送的数据:

public function addtodb() 
    { 
    $note = $this->input->post('note'); 
    $this->postit_model->addnote($note); 
    echo 'true'; //send true response to client after note has been added to db 
    } 

现在我有一个数据库表叫职位与字段:id, title, message.我要插入的传递数据集到数据库中。

问题: - 我发送到服务器的jQuery对象中的名称必须与数据库中的字段名称相同才能使用codeigniter $ this-> db-> insert(' mytable',$ data);方法?

- 我将如何去插入值titlemessage而不明确指定我想插入它们的id,这样这个数据集将被添加到第一个空白点的数据库中。

回答

1

不要在jQuery对象,我发送到 服务器名称必须是相同的字段名称数据库是 能够使用笨$这个 - > DB->插件(” mytable',$ data); 方法?

号您指示$data数组中的字段名称:

$data = array(
    'field_name' => 'field value', 
    'other_field' => 'other field value' 
); 
$this->db->insert('my_table', $data); 

http://ellislab.com/codeigniter/user-guide/database/active_record.html#insert

我怎么会去插入值,标题和邮件而不 在哪个ID明确指定我想插入它们,以便这个 数据集将被添加到第一个空白点的数据库中。

创建数据库表时,应该指明id字段为主键/自动增量。这将根据表中的行数自动生成id值。这是标准程序,可能是数据库如果从其他地方获得或者正在遵循教程而设置。

http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html

+0

在$ data数组,由表名和other_table你指的领域,在这种情况下:标题和消息吗? – TheBaj

+0

正确。对不起,错别字。我会更新答案。 – stormdrain

相关问题