Rufen Sie an eine member-Funktion Ergebnis() mit CodeIgniter
Ich habe ein seltsames Problem mit mysql und codeigniter. Ich erhalte die folgende Fehlermeldung:
Fatal error: Call to a member function result() on a non-object in
Controller:
class Event extends Client_Controller
{
function __construct()
{
parent::__construct();
$this->load->model('Event_Model', '', TRUE);
}
function pending()
{
$data['query'] = $this->Event_Model->get_events_list("pending");
$this->load->view('event/pending', $data);
}
}
Modell:
class Event_Model extends Client_Model
{
function __construct()
{
parent::__construct();
}
function get_events_list($event_status = '')
{
$query = $this->db->query("SELECT * FROM tbl_events WHERE event_status= ? ORDER BY event_id DESC", array($event_status));
return $query->result();//Error is on this line
}
}
Autoload:
$autoload['libraries'] = array('database', 'session');
Jede Hilfe ist willkommen. Ich habe einige Zweifel, dass meine mysql könnte time-out?
InformationsquelleAutor greenLizard | 2012-02-28
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den Fehler ist wahrscheinlich auf die Tatsache zurückzuführen, dass die Abfrage (und die daraus resultierenden
result()
Objekt) leer sind. Sicherzustellen, dass die Abfrage eigentlich gibt mindestens ein Datensatz, bevor Sie versuchen, verwenden Sie dieresult()
Objekt:SELECT *
als seine mehr Ressourcen benötigen, und Sie sollten active-Datensätze, wenn überhaupt möglich.. codeigniter.com/user_guide/database/active_record.htmlIch habe versucht dies: Fatal error: Call to a member function num_rows() on a non-object in. Ich glaube, es ist auf der Fahrer-oder Datenbank-Ebene bin ich mit * nur für den code hier ..
Sie sollten überprüfen Sie Ihre Datenbank-Verbindung und Konfigurations-Informationen.
Es scheint, mein mysql wurde beschädigt, der gerade aktualisiert wurde und nun funktioniert. Vielen Dank an alle für Eure Hilfe
Froh bekamen Sie es das arbeiten.
InformationsquelleAutor Colin Brock
Normalerweise ist es, weil deine query ist falsch. Denken Sie daran, dass
result()
ist boolean und wenn nichts zurück kommt ist es ein fataler Fehler, da der SQL server ein Fehler zurückgegebenInformationsquelleAutor Alejandro Rico Garcia