ホームページ >データベース >mysql チュートリアル >PHPMyAdmin ではデータベースが存在すると表示されるのに、PHP コードでは「不明なデータベース エラー」が表示されるのはなぜですか?

PHPMyAdmin ではデータベースが存在すると表示されるのに、PHP コードでは「不明なデータベース エラー」が表示されるのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-05 10:50:10551ブラウズ

Why Does My PHP Code Show an

PHPMyAdmin との互換性を使用した PHP の「不明なデータベース エラー」のトラブルシューティング

PHP PDO を使用して MySQL データベースに接続すると、ユーザーが「 PHPMyAdmin にデータベースが存在するにもかかわらず、「不明なデータベース エラー」というメッセージが表示されます。このエラーは、ユーザーが新しく作成されたデータベースを操作する能力を損ないます。

この問題を解決するには、根本的な原因を特定することが重要です:

  • スペル エラー: PHP コードと PHPMyAdmin のデータベース名をよく確認してください。単純なタイプミスにより、このエラーが発生する可能性があります。
  • データベース サーバーの不一致: PHP と PHPMyAdmin が同じデータベース サーバーにアクセスしていることを確認してください。この問題は、システムに複数のデータベース サーバーがインストールされている場合に発生します。

PHPMyAdmin でサーバー接続の詳細を確認するには、次のクエリを実行します。

show databases;

得られた結果と結果を比較します。 PDO または mysqli のいずれかを使用した 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);
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$mysqli = mysqli_connect($host, $user, $pass);
$databases = $mysqli->query('show databases')->fetch_all();

出力を確認すると、スペル ミスやデータベース サーバー接続の違いを特定できます。相違がある場合は、PHPMyAdmin の構成ファイルをチェックして、適切なサーバーに接続していることを確認してください。

以上がPHPMyAdmin ではデータベースが存在すると表示されるのに、PHP コードでは「不明なデータベース エラー」が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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