Вызов функции-члена add () для необъекта - PullRequest
0 голосов
/ 04 марта 2012

Я получаю сообщение об ошибке при выполнении этой простой операции вставки, пожалуйста, посмотрите

ОШИБКА:
Обнаружена ошибка PHP
Серьезность: Уведомление
Сообщение: неопределенное свойство: Welcome :: $ mdata
Имя файла: controllers / welcome.php
Номер строки: 29

Неустранимая ошибка: вызов функции-члена add () для необъекта в C: \ wamp \ www \ codi \ application \ controllers \ welcome.php в строке 29

Я создал код на основе MVC с использованием codeigniter

мои модели называются mdata.php как:

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Mdata extends CI_Model {
function Mdata(){
parent::__construct();
}
function add($id, $name) {
        $data = array(
            'userid' => $id,
            'username' => $name
        );

        $this->db->insert('users', $data);
    }
}
?>

мой контроллер назван как welcome.php как

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Welcome extends CI_Controller 
{

public function index()

{
        if($this->input->post('submit'))
        {
            $id = $this->input->post('id');
            $name = $this->input->post('name');
            $this->mdata->add($id,$name);
            }

$this->load->model('mdata','',TRUE);

 $this->load->view('data');

}

}

=============================================== ============================== мой файл представления, который является data.php как

<body>
<?php $this->load->helper('form'); ?>

<?php echo form_open('welcome'); ?>

    <p>
        <?php echo form_input('id'); ?>
    </p>

    <p>
        <?php echo form_input('name'); ?>
    </p>

    <p>
        <?php echo form_submit('submit', 'Submit'); ?>
    </p>

<?php echo form_close(); ?>
</body>

Можно мне помочь с этой простой ошибкой, которую я совершил?

1 Ответ

3 голосов
/ 04 марта 2012

Вам нужно загрузить модель, на которую ссылается $this->mdata до вызова add()

if($this->input->post('submit'))
{
  // load the model first!
  $this->load->model('mdata');

  $id = $this->input->post('id');
  $name = $this->input->post('name');

  $this->mdata->add($id,$name);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...