Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Saya Tidak Boleh Menyambung ke Pangkalan Data dalam PHP Apabila Ia Wujud dalam PHPMyAdmin?

Mengapa Saya Tidak Boleh Menyambung ke Pangkalan Data dalam PHP Apabila Ia Wujud dalam PHPMyAdmin?

Patricia Arquette
Patricia Arquetteasal
2024-10-30 05:04:02216semak imbas

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

Menyelesaikan Masalah Ralat Pangkalan Data Tidak Diketahui dalam PHP Walaupun Wujud dalam PHPMyAdmin

Isu sambungan pangkalan data PHP boleh timbul walaupun pangkalan data muncul dalam PHPMyAdmin. Satu punca yang mungkin ialah ralat ejaan dalam nama pangkalan data yang disediakan dalam kod PHP. Mengesahkan semula ejaan kedua-dua kod PHP dan PHPMyAdmin adalah penting.

Isu lain yang berpotensi ialah apabila kod PHP dan PHPMyAdmin disambungkan kepada kejadian pangkalan data yang berasingan. Keadaan ini boleh berlaku dalam persekitaran dengan berbilang pelayan pangkalan data dipasang. Untuk mengesahkan ini, laksanakan pertanyaan berikut dalam PHPMyAdmin:

show databases;

Seterusnya, laksanakan pertanyaan yang sama dalam PHP menggunakan sama ada PDO atau MySQLi:

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>

Bandingkan output kedua-dua pertanyaan. Jika ia berbeza, ia menunjukkan sama ada ralat ejaan atau sambungan pangkalan data yang berasingan. Selepas itu, semak fail konfigurasi PHPMyAdmin untuk memastikan ia bersambung ke pelayan yang sesuai.

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menyambung ke Pangkalan Data dalam PHP Apabila Ia Wujud dalam PHPMyAdmin?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn