это мой контроллер ..
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
Неустранимая ошибка: вызов функции-члена generate () для не-объекта в C: \ xampp \ htdocs \ CodeIgniter_2.1.3 \ application \ views \ master \ Customer.php в строке 44
Любое тело, пожалуйста, скажите мне, в чем проблема. Я новичок в когниторе.
Когда в представлении вызовите get_instance()
чтобы получить экземпляр CodeIgniter. Оттуда вы можете получить доступ к свойству table
объекта, вызвать метод, который вам нужен.
<div id='results'> <?php $CI =& get_instance(); ?> <?php echo $CI->table->generate($data1); ?> <?php echo $CI->pagination->create_links(); ?> </div>
Попробуйте загрузить библиотеку table
в свой конструктор
public function __construct() { parent::__construct(); $this->load->model('Customer_model'); $this->load->library('table'); }
если он по-прежнему дает такую же ошибку, загрузите эту библиотеку table
в файл автозагрузки, как это
$autoload['libraries'] = array('table');
надеюсь, что это сработает
я хотел бы порекомендовать вам следующее:
<?php $CI =& get_instance(); ?>
используйте $CI
вместо $this
на ваш взгляд, и посмотрите, работает оно или нет.
только одна строка, необходимая вам
$this->load->library('table');
Попробуй это:
$autoload['libraries'] = array('database','session','table');