2016-10-01 5 views
0

は、ここでは、コードです:。このコードは、ローカルで正常に動作します致命的なエラー:非オブジェクトのメンバ関数の結果()の呼び出し(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(); 
} 

。しかし、プロジェクトを000webhostにプッシュすると、リモートデータベースにデータが含まれていてもnullが返されました。

Autoload.php

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

で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; 

は、私は何を欠場しましたか?

+0

ここで古い 'mysql_'データベースAPIを使用しています。' $ db ['remote'] ['dbdriver'] = 'mysql'; 'ホスティングがPHP7を使用している場合は存在しません。あるいは、 '000webhost'が' mysql_'拡張を無効にしましたか? – RiggsFolly

+0

あなたの質問は、実際のログイン資格情報と思われるものを編集しました。それらが実際の資格情報であった場合は、今すぐ変更することを強くお勧めします。 –

+0

mysqliに変更する –

答えて

-2

データベースドライバをmysqlからmysqliに変更するだけです。これは、configフォルダのdatabase.phpファイルで行います。

+0

* "データベースドライバをmysqlからmysqliに変更するだけです。" * - 詳細が必要です。 mysqlからmysqliにコードを変更するだけでなく、特定の構文を遵守することもできません。 –

+0

@ Fred-ii-実際これは完全に受け入れられる回答です。CIは独自のデータベースドライバライブラリとの違いを処理します。実際には詳細は必要ありません。 –

+0

@JamesLalorあなたはOPに答えを受け入れるように指示できますし、明らかにブローバブル(ハハ)を持っている他のコメントにも注意を払うことさえできます。面白い、私はそれのためにupvoteが表示されません。たぶんあなたはそれを1つ与えることができます;-) –

関連する問題