Mã của bạn và phpmyadmin của bạn chỉ đơn giản là kết nối với các máy chủ cơ sở dữ liệu khác nhau . Điều này có thể xảy ra, chẳng hạn như nếu bạn cài đặt nhiều máy chủ cơ sở dữ liệu trên PC của mình.
Để lấy bằng chứng, hãy chạy truy vấn sau trong phpmyadmin:
show databases;
Và sau đó chạy cùng một truy vấn trong PDO:
$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);
hoặc mysqli
$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);
và so sánh đầu ra. Nó sẽ cho bạn thấy rằng có một lỗi chính tả hoặc thực sự là phpmyadmin và PHP được kết nối với các máy chủ cơ sở dữ liệu khác nhau.
Sau đó, bạn có thể kiểm tra tệp cấu hình trong PHPmyAdmin để đảm bảo rằng nó kết nối với máy chủ thích hợp