Windows MAMP PHP mengalami ralat maut: PDOException yang tidak ditangkap: Pemandu tidak ditemui. Fail PHP.ini mempunyai bahagian yang tidak dikomen dengan betul
P粉274161593
P粉274161593 2024-03-27 16:18:23
0
1
458

Saya mempunyai ralat berikut -

Fatal error: Uncaught PDOException: could not find driver

Apabila cuba menyambung melalui PDO.

<?php


$host = '127.0.0.1';
$db   = 'mytodo';
$user = 'root';
$pass = 'root';
$charset = 'utf8mb4';

$options = [
    \PDO::ATTR_ERRMODE            => \PDO::ERRMODE_EXCEPTION,
    \PDO::ATTR_DEFAULT_FETCH_MODE => \PDO::FETCH_ASSOC,
    \PDO::ATTR_EMULATE_PREPARES   => false,
];

$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
try {
     $pdo = new \PDO($dsn, $user, $pass, $options);
} catch (\PDOException $e) {
     throw new \PDOException($e->getMessage(), (int)$e->getCode());
}

require ('index.view.php');

Saya telah mengalami banyak contoh masalah yang sama, semuanya diselesaikan dengan menyahkomen "extension=php_pdo_mysql.dll" dalam php.ini, tetapi ia tidak memberi sebarang perbezaan kepada saya.

Saya menggunakan Windows 10, MAMP dan PHP 8.0.1

phpinfo() menunjukkan tiada pemandu di bawah PDO

Walaupun tiada komen dalam php.ini

Sebarang bantuan amatlah dihargai

P粉274161593
P粉274161593

membalas semua(1)
P粉795311321

Saya tidak pasti sama ada ini cara yang betul untuk menyelesaikan masalah ini, tetapi ia berkesan, jadi saya rasa begitu?

Ternyata lokasi yang disenaraikan dalam dokumentasi MAMP bukanlah lokasi yang saya cari C:MAMPconfphpX.XX - 实际上是 C:MAMPbinphpphpX.X.X 。我意识到这一点后遇到的问题是这里没有 php.ini 文件,这就是我认为它是其他位置的原因。然后,我从 C:MAMPconfphpX.XX Salin .ini ke lokasi dan mulakan semula MAMP. Kemakmuran.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan