1

これは私のコントローラーです..

class Customer extends CI_controller
{

public function __construct()
{
    parent::__construct();
    $this->load->model('Customer_model');
}
public function create()
{

        $this->load->helper('form');
        $this->load->library('form_validation');
    $this->form_validation->set_rules('name', 'Name', 'required');
    $this->form_validation->set_rules('address', 'Address', 'required');
    $this->form_validation->set_rules('office_phone', 'Phonenumber', 'required');
    $this->form_validation->set_rules('fax', 'Faxno.', 'required');
    $this->form_validation->set_rules('email', 'Mailaddress', 'required');

    $data = array(
        'name' => $this->input->post('name'),

        'address' => $this->input->post('address'),

        'phoneno' => $this->input->post('office_phone'),

        'fax' => $this->input->post('fax'),

        'email' => $this->input->post('email')
    );


    if ($this->form_validation->run() === FALSE)
    {
        $this->load->helper('url');
        $this->load->view('templates/header');  
        $this->load->view('master/customer',$data);
    }
    else
    {

        $this->Customer_model->register($data);
        $this->load->library('session');
       //$this->session->set_flashdata('message', 'New Contact has been added');
             //redirect(current_url());
        $this->load->helper('url');
        $this->load->view('templates/header');
        $this->load->view('templates/success');
    }
    $this->load->library('pagination');
     $this->load->library('table');



      // Config setup
    $config['base_url'] = base_url().'/customer/';
    $config['total_rows'] = 20;
    $config['per_page'] = 10;
    // I added this extra one to control the number of links to show up at each page.
    $config['num_links'] = 5;
    // Initialize
    $this->pagination->initialize($config);


      $data1 = $this->db->get('registration');
      $header = array('Name', 'Address', 'phoneno','fax','email');
       $this->table->set_heading($header);
       $this->load->view('master/customer',$data1);
       }
}

これは私のビュー部分です..

<div id='results'>
<?php  echo $this->table->generate($data1); ?>
<?php echo $this->pagination->create_links(); ?>
</div>

iam の実行中に、次のようなエラー メッセージが表示されます

PHP エラーが発生しました

重大度: 通知

メッセージ: 未定義のプロパティ: CI_Loader::$table

ファイル名: master/Customer.php

ライン番号: 44

致命的なエラー: 44 行目の C:\xampp\htdocs\CodeIgniter_2.1.3\application\views\master\Customer.php の非オブジェクトに対するメンバー関数 generate() の呼び出し

どんな人でも、何が問題なのか教えてください.私はコードイグネーターが初めてです..

4

5 に答える 5

6

ビュー内で、呼び出しget_instance()て CodeIgniter インスタンスを取得します。そこからtable、オブジェクトのプロパティにアクセスし、必要なメソッドを呼び出すことができます。

<div id='results'>
<?php $CI =& get_instance(); ?>
<?php echo $CI->table->generate($data1); ?>
<?php echo $CI->pagination->create_links(); ?>
</div>
于 2013-03-25T13:04:20.950 に答える
1

これをお勧めします:

<?php $CI =& get_instance(); ?>

$CIビューの代わりに使用$thisして、それが機能しているかどうかを確認してください..

于 2013-12-25T21:35:39.333 に答える
0

tableコンストラクタにライブラリをロードしてみてください

public function __construct()
{
     parent::__construct();
     $this->load->model('Customer_model');
     $this->load->library('table');
}

それでも同じエラーが発生する場合は、このtableライブラリを次のように autoload ファイルにロードします

$autoload['libraries'] = array('table');

これがうまくいくことを願っています

于 2013-03-25T14:46:12.037 に答える
0

必要な行は 1 行だけ

$this->load->library('table');
于 2015-03-29T19:54:02.550 に答える