Maison > Questions et réponses > le corps du texte
J'ai l'erreur suivante -
Fatal error: Uncaught PDOException: could not find driver
Lorsque vous essayez de vous connecter via 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');
J'ai rencontré de nombreuses instances du même problème, toutes résolues en décommentant "extension=php_pdo_mysql.dll" dans php.ini, mais cela n'a fait aucune différence pour moi.
J'utilise Windows 10, MAMP et PHP 8.0.1
phpinfo() n'affiche aucun pilote sous PDO
Bien qu'il n'y ait pas de commentaire dans php.ini
Toute aide serait grandement appréciée
P粉7953113212024-03-28 12:09:11
Je ne suis pas entièrement sûr que ce soit la bonne façon de résoudre ce problème, mais cela fonctionne, alors je suppose que oui ?
Il s'avère que l'emplacement répertorié dans la documentation MAMP n'était pas l'emplacement que je recherchais C:MAMPconfphpX.XX
- 实际上是 C:MAMPbinphpphpX.X.X
。我意识到这一点后遇到的问题是这里没有 php.ini 文件,这就是我认为它是其他位置的原因。然后,我从 C:MAMPconfphpX.XX
Copiez le .ini à l'emplacement et redémarrez MAMP. Prospérité.