Ongedefinieerde eigenschap: Gebruikers :: $ Usersa Fatale fout: oproep voor een lidfunctie invoegen () op een niet-object

Ik gebruik het codeigniter-framework en ik krijg deze foutmelding als ik mijn formulier heb verzonden:

Message: Undefined property: Users::$Usersa
Filename: controllers/users.php
Line: 44
Fatal error: Call to a member function insert() on a non-object

Gebruikerscontroller (sectie die is verbroken):

$this->load->model('usersa');

$register = array(
        'username' => $this->input->post('username'),
        'password' => $this->input->post('password'),
        'email' => $this->input->post('email')
    );

   //validation stuff

    if ($this->input->post())
        if ($this->form_validation->run() == FALSE) {

        } else {
            $this->Usersa->insert($register);//This is line 44
        }

Usersa Model (dit bestand bevindt zich in applicatie/modellen)

class Usersa extends MY_Model {

var $table = 'users';

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

MY_Model (in toepassingen/kern)

class MY_Model extends CI_Model{

protected $table = '';


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

function insert() {
    $this->db->insert($this->table, $register);

}
}

De tabelgegevens worden goed doorgegeven en ik ben er vrij zeker van dat de registergegevens ook goed zijn. Ik kan er gewoon niet achter komen waarom ik de foutmelding krijg.

1

1 antwoord

You are loading the model as "usera" - but referencing it as $this->Usera - you should references it lowercased:

$this->usersa->insert($register);

Als alternatief kunt u de naam waarnaar u verwijst naar het model doorgeven met de tweede parameter zoals geïllustreerd @ http://codeigniter.com/user_guide/general/models.html :

$this->load->model('usersa','some_model_name');

$this->some_model_name->insert(...);

0
toegevoegd
Bedankt daarvoor, ik had het in eerste instantie in kleine letters en veranderde het toen omdat ik een andere fout ontving.
toegevoegd de auteur Codarz360, de bron