PHPMyAdmin に存在するにもかかわらず PHP で発生した不明なデータベース エラーのトラブルシューティング
データベースが PHPMyAdmin に表示されているにもかかわらず、PHP データベース接続の問題が発生する可能性があります。考えられる原因の 1 つは、PHP コードで指定されたデータベース名のスペル ミスです。 PHP コードと PHPMyAdmin の両方のスペルを再確認することが重要です。
もう 1 つの潜在的な問題は、PHP コードと PHPMyAdmin が別々のデータベース インスタンスに接続する場合です。この状況は、複数のデータベース サーバーがインストールされている環境で発生する可能性があります。これを確認するには、PHPMyAdmin で次のクエリを実行します:
show databases;
その後、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 の構成ファイルを調べて、適切なサーバーに接続していることを確認します。
以上がPHPMyAdmin にデータベースが存在するのに、PHP でデータベースに接続できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。