ホームページ バックエンド開発 PHPチュートリアル PHP 致命的エラーの解決策: 未定義メソッド mysqli::prepare() の呼び出し

PHP 致命的エラーの解決策: 未定義メソッド mysqli::prepare() の呼び出し

Jun 23, 2023 am 11:21 AM
php mysqli prepare

mysqli 拡張機能を使用して MySQL データベースに接続して操作すると、「PHP 致命的エラー: 未定義メソッド mysqli::prepare() の呼び出し」というエラーが発生することがあります。このエラーは通常、次の理由によって発生します:

  1. PHP には mysqli 拡張機能のサポートが不十分です;
  2. mysqli 拡張機能が正しく読み込まれていない、または正しく構成されていません;
  3. PHPコードに構文エラーがあります;
  4. MySQL サーバーが正しく構成されていないか、実行中です;

これらの理由から、解決策を以下に紹介します。

  1. PHP の mysqli 拡張機能のサポートを確認する

まず、PHP で mysqli 拡張機能が有効になっているかどうかを確認する必要があります。 phpinfo() 関数を通じて、mysqli 拡張機能に関する PHP 情報を取得できます。方法は次のとおりです。

1) phpinfo.php という名前の php ファイルを作成し、その中に次のコードをコピーします。

<?php
phpinfo();
?>
ログイン後にコピー

2) この php ファイルをルート ディレクトリにアップロードします。 Web サイトにアクセスし、ブラウザに http://yourdomain.com/phpinfo.php と入力してファイルにアクセスします;
3) PHP 情報ページで、「mysqli」拡張機能がロードされているかどうかを確認します。そうでない場合は、php.ini ファイルで mysqli 拡張機能を有効にする必要があります。

  1. mysqli 拡張機能の構成

mysqli 拡張機能がサポートされていることを確認しても、PHP 致命的エラー: 未定義メソッドの呼び出し mysqli::prepare() エラーがまだ発生する場合が発生した場合は、mysqli 拡張機能の構成が正しいかどうかを確認する必要があります。

まず、mysqli 拡張機能が正しくロードされているかどうかを確認します。 PHP 設定ファイル php.ini で次のコードを探すことで確認できます。

extension=mysqli.so

上記のコードが見つからない場合は、mysqli 拡張機能をロードする必要があります。 php.ini のパスに設定します。

次に、データベースへの接続時に使用されるパラメータが正しいかどうかを確認する必要があります。通常、mysqli 接続にはホスト名、ユーザー名、パスワード、データベース名の 4 つのパラメーターが必要です。これら 4 つのパラメータが正しく設定されていることを確認してください。例:

$host = 'localhost';
$username = 'user';
$password = 'pwd';
$database_name = 'testdb';

$conn = new mysqli($host, $username, $password, $database_name);
ログイン後にコピー

最後に、mysqli 拡張機能が正しく構成されていない場合は、コードで mysqli バージョンを手動で構成してみることができます。例:

$conn = new mysqli();
$conn -> init();
$conn -> options(MYSQLI_OPT_CONNECT_TIMEOUT, 5);
$conn -> real_connect($host, $username, $password, $database_name);
ログイン後にコピー
  1. PHP コード構文の確認

mysqli 拡張機能を使用する場合、PHP コードに構文エラーがあると、PHP 致命的エラーも発生します。 : 未定義メソッド Mysqli::prepare() の呼び出しエラー。したがって、コードに構文エラーがないかチェックする必要があります。

コード エディターまたは IDE ツールを使用して構文をチェックし、特にセミコロンの欠落や中括弧の不一致などがないかどうかを確認できます。

  1. MySQL サーバーを確認する

上記の対策でも問題が解決できない場合は、MySQL サーバーが実行中であり、正しく構成されているかどうかを確認する必要があります。

まず、MySQL サーバーが起動しているかどうかを確認します。次のコマンドを使用してターミナルで確認できます:

sudo service mysql status
ログイン後にコピー

MariaDB を使用したことがある場合は、次のコマンドを試すことができます:

sudo service mariadb status
ログイン後にコピー

MySQL または MariaDB サービスが実行されている場合は、次のことを行う必要があります。 MySQL データベースが正しく設定されているかどうかを確認します。 MySQL クライアントを使用して MySQL データベースにログインし、必要なデータベースとテーブルが存在するかどうかを確認できます。

mysql -u username -p
ログイン後にコピー

パスワードを入力し、現在のデータベースを表示します:

SHOW DATABASES;
ログイン後にコピー

データベースがリストにない場合は、データベースを手動で作成する必要があります。

MySQL サーバーとデータベースが正しく構成されている場合、問題は PHP 部分にある可能性が高くなります。 PHP コードが mysqli クラスとそのメソッドを正しく呼び出すかどうかを確認できます。

概要

mysqli 拡張機能を使用するときに、「PHP 致命的エラー: 未定義メソッド mysqli::prepare() への呼び出し」というエラーが発生した場合は、まず PHP が mysqli 拡張機能をサポートしているかどうかを確認する必要があります。 mysqli 拡張機能が正しくロードおよび構成されているかどうか、PHP コードに構文エラーがなく、MySQL データベースが正しく構成されているかどうか。上記の問題が解決されて初めて、他の問題のトラブルシューティングを続けることができます。

以上がPHP 致命的エラーの解決策: 未定義メソッド mysqli::prepare() の呼び出しの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

See all articles