2016-10-01 1 views
0

Hier ist der Code:.Fatal error: Call auf eine Elementfunktion Ergebnis() auf einem Nicht-Objekt (Codignighter)

public function get_id_model($email){ 
    $this->db->select('user_id'); 
    $this->db->where('email', $email); 
    $query = $this->db->get('users'); 
    return $query->result(); 
} 

Dieser Code fein lokal arbeitet. Aber als ich das Projekt auf 000webhost schob, gab es die Null zurück, obwohl meine entfernte Datenbank Daten enthielt.

database.php

$db['remote']['hostname'] = 'xxx.000webhost.com'; 
$db['remote']['username'] = 'xxx'; 
$db['remote']['password'] = 'xxx'; 
$db['remote']['database'] = 'xxx'; 
$db['remote']['dbdriver'] = 'mysql'; 
$db['remote']['dbprefix'] = ''; 
$db['remote']['pconnect'] = TRUE; 
$db['remote']['db_debug'] = TRUE; 
$db['remote']['cache_on'] = FALSE; 
$db['remote']['cachedir'] = ''; 
$db['remote']['char_set'] = 'utf8'; 
$db['remote']['dbcollat'] = 'utf8_general_ci'; 
$db['remote']['swap_pre'] = ''; 
$db['remote']['autoinit'] = TRUE; 
$db['remote']['stricton'] = FALSE; 

In Autoload.php

$autoload['libraries'] = array('database', 'session'); 

Habe ich etwas verpasst?

+0

Sie verwenden die alte 'mysql_' Datenbank-API hier' $ db ['remote'] ['dbdriver'] = 'mysql'; 'Wenn Ihr Hosting PHP7 verwendet, existiert es nicht. Oder hat '000webhost' die' mysql_'-Erweiterung ausgeschaltet? – RiggsFolly

+0

Ich habe Ihre Frage mit scheinbar gültigen Anmeldeinformationen bearbeitet. Ich schlage vor, dass Sie sie jetzt ändern, wenn das tatsächliche Anmeldeinformationen waren. –

+0

ändern Sie es einfach zu mysqli –

Antwort

-2

Ändern Sie einfach den Datenbanktreiber von mysql zu mysqli. Sie tun das in der Datei "database.php" im Ordner "config".

+0

* "Ändern Sie einfach den Datenbanktreiber von mysql nach mysqli." * - Das erfordert mehr Details. Sie können ihren Code nicht einfach von mysql nach mysqli_ ändern, nicht ohne bestimmte Syntax zu beachten. –

+0

@ Fred-II-eigentlich ist dies eine vollkommen akzeptable Antwort, CI wird die Unterschiede mit eigenen Database Driver Libraries behandeln. Es muss eigentlich kein Detail mehr sein. –

+0

@JamesLalor Nun kannst du dem OP sagen, die Antwort dann zu akzeptieren und vielleicht sogar auf andere Kommentare zu achten, die offensichtlich Schlagblasen haben (haha). Lustig, aber ich sehe keine Aufwertung dafür. Vielleicht könntest du es dir geben ;-) –

Verwandte Themen