Heim  >  Artikel  >  Backend-Entwicklung  >  Warum kann ich in PHP keine Verbindung zu einer Datenbank herstellen, wenn diese in PHPMyAdmin vorhanden ist?

Warum kann ich in PHP keine Verbindung zu einer Datenbank herstellen, wenn diese in PHPMyAdmin vorhanden ist?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-30 05:04:02122Durchsuche

Why Can't I Connect to a Database in PHP When It Exists in PHPMyAdmin?

Fehlerbehebung bei unbekannten Datenbankfehlern in PHP, obwohl sie in PHPMyAdmin vorhanden sind

PHP-Datenbankkonnektivitätsprobleme können auftreten, obwohl Datenbanken in PHPMyAdmin angezeigt werden. Eine mögliche Ursache ist ein Rechtschreibfehler im im PHP-Code angegebenen Datenbanknamen. Die erneute Bestätigung der Schreibweisen sowohl des PHP-Codes als auch von PHPMyAdmin ist von entscheidender Bedeutung.

Ein weiteres potenzielles Problem besteht darin, dass der PHP-Code und PHPMyAdmin eine Verbindung zu separaten Datenbankinstanzen herstellen. Diese Situation kann in Umgebungen auftreten, in denen mehrere Datenbankserver installiert sind. Um dies zu überprüfen, führen Sie die folgende Abfrage in PHPMyAdmin aus:

show databases;

Führen Sie anschließend dieselbe Abfrage in PHP mit entweder PDO oder MySQLi aus:

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>

Vergleichen Sie die Ausgaben beider Abfragen. Wenn sie sich unterscheiden, deutet das entweder auf einen Rechtschreibfehler oder auf getrennte Datenbankverbindungen hin. Überprüfen Sie anschließend die Konfigurationsdatei von PHPMyAdmin, um sicherzustellen, dass eine Verbindung zum entsprechenden Server hergestellt wird.

Das obige ist der detaillierte Inhalt vonWarum kann ich in PHP keine Verbindung zu einer Datenbank herstellen, wenn diese in PHPMyAdmin vorhanden ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn