CodeIgniter提交后将数据插入数据库

时间:2012-12-30 17:05:02

标签: php codeigniter

下面是我的books_controller.php

function books_s()
{
    $this->load->helper('form');
    $this->load->helper('html');
    $this->load->model('books_model');

    $sri=$this->input->post();
    print_R($sri);

    if($this->input->post())
    {
    $bookme=$this->load->books_model->post_books(); 

    }
    $this->load->view('header.php');    
}

我没有放置我的books_view.php代码bcos你可以在我的控制器代码中看到我已经完成了print_R($sri);我可以看到值从视图页面发布到控制器页面...输出是

Array ( 
    [Id] => 4 
    [title] => just testng 
    [text] => goooo 
    [submit] => submit 
    ) 

`我也收到错误消息

Message: Undefined property: CI_Loader::$books_model

Filename: controllers/books_Controller.php books_controller.php我知道我的模型代码存在问题

function books_model()
{
    parent::__Construct();
}

function post_books()
{
    $this->load->database();
    $id=$this->input->post('id');
    $title=$this->input->post('title');
    $text=$this->input->post('text');

    $data=array('id'=>$id,'title'=>$title,'text'=>$text);
    $this->db->insert('data',$data);
}

你能帮助我找到我在哪里犯这个错误吗?

2 个答案:

答案 0 :(得分:2)

你的模型应该是这样的

Class Books_Model Extends CI_Model{

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

    function post_books()
    {
        $this->load->database();
        $id=$this->input->post('id');
        $title=$this->input->post('title');
        $text=$this->input->post('text');

        $data=array('id'=>$id,'title'=>$title,'text'=>$text);
        $this->db->insert('data',$data);
    }
}

答案 1 :(得分:1)

$bookme=$this->load->books_model->post_books(); 

您已经加载了模型,所以现在您只需要访问该实例,它应该是:

$bookme=$this->books_model->post_books(); 

您还需要这样做:

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

然而,它不应该是导致错误的原因,因为它应该以任何方式工作,但上述是正确的方法。