Codeigniter: 定義されていない関数 mysqli_init() の呼び出しで致命的なエラーが発生しました 質問する

Codeigniter: 定義されていない関数 mysqli_init() の呼び出しで致命的なエラーが発生しました 質問する

サーバーを変更したところ、以下のエラーが発生しました。

Fatal error: Call to undefined function mysqli_init() in /home/blacktwitter/public_html/system/database/drivers/mysqli/mysqli_driver.php on line 126
A PHP Error was encountered

Severity: Warning

Message: Cannot modify header information - headers already sent by (output started at /home/blacktwitter/public_html/system/database/drivers/mysqli/mysqli_driver.php:126)

Filename: core/Common.php

Line Number: 564

Backtrace:

A PHP Error was encountered

Severity: Error

Message: Call to undefined function mysqli_init()

Filename: mysqli/mysqli_driver.php

Line Number: 126

Backtrace:

ウェブサイトは Codeigniter にあります。1 つのサーバー上でも、ローカル マシン上でも問題なく動作します。しかし、そのウェブサイトを新しいサーバーにアップロードすると、エラーが発生します。もちろん、データベース接続、base_url() などの重要なパラメータを変更しました。

データベースに疑問がありましたが、新しいデータベースやユーザーなどを作成し、接続情報を変更しました。

なぜこのようなことが起こるのでしょうか? サーバーまたは Web サイトのバグかどうかを知ることは役に立ちます。また、テスト コードを使用して index.html を作成すると、すべて正常になります。

ベストアンサー1

これはアプリケーションのバグではなく、単にドライバーが不足しているだけなので、いくつかのオプションがあります...

php init に移動し、次のコメントを解除します。

extension=php_mysqli.dll

そうでない場合は、サーバーにインストールしてみてください。インストール方法はディストリビューションによって異なります。

インストールしてみてくださいphp5-mysqlnd

ホスティングの制限によりそれができない場合は、mysql ドライバーに移行するだけです (CodeIgniter などの他の構成やクエリを変更する必要はありません)。

このように(設定ファイルで)

$db['default']['dbdriver'] = 'mysql'; (you might have mysqli now)

おすすめ記事