PHP でのデータベース接続の問題のトラブルシューティング
PHP を使用して MySQL データベースに接続すると、新しく作成されたデータベースを扱うときに問題が発生することがあります。この記事では、PHPMyAdmin には存在するが PHP には存在しないデータベースに PDO を使用して接続するときに発生する一般的なエラーについて説明します。
根本原因を理解するには、次の 2 つの可能性を考慮することが重要です。
<code class="sql">show databases;</code>
次に、PDO または mysqli を使用して PHP で同じクエリを実行します:
PDO の場合:
<code class="php">$host = 'your db host'; $user = 'your db username'; $pass = 'your db password'; $pdo = new PDO("mysql:host=$host", $user, $pass, [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]); $databases = $pdo->query('show databases')->fetchAll(PDO::FETCH_COLUMN); var_dump($databases);</code>
mysqli の場合:
<code class="php">$host = 'your db host'; $user = 'your db username'; $pass = 'your db password'; mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); $mysqli = mysqli_connect($host, $user, $pass); $databases = $mysqli->query('show databases')->fetch_all(); var_dump($databases);</code>
出力を比較して、矛盾があるかどうかを確認します。データベースが異なる場合、問題はサーバー構成にあります。
サーバーの構成ミスの問題を解決するには、PHPMyAdmin の構成ファイルを調べて、正しいサーバーが指定されていることを確認してください。
以上が私の PHP コードが PHPMyAdmin に存在するデータベースを見つけられないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。