2
respostas

Seguinte erro é apresentado ao tentar acessar categoria (php.ini já configurado)

Fatal error: Uncaught PDOException: could not find driver in D:\xampp\htdocs\Estudos\PHP com PDO\aula1\classes\Categoria.php:12 Stack trace: #0 D:\xampp\htdocs\Estudos\PHP com PDO\aula1\classes\Categoria.php(12): PDO->__construct('mysql:host=127....', 'root', 'root') #1 D:\xampp\htdocs\Estudos\PHP com PDO\aula1\categorias.php(4): Categoria->listar() #2 {main} thrown in D:\xampp\htdocs\Estudos\PHP com PDO\aula1\classes\Categoria.php on line 12

2 respostas

Olá Rafael,

Tudo bem?

Pela mensagem de erro aparentemente o seu PHP não está configurado com o driver do mysql para o PDO, isso pode ocorrer pelo driver não estar habilitado ou pelo arquivo de extensão não existir no diretório esperado.

Notei que você mencionou que o php.ini já foi ajustado, contudo ainda assim é interessante checar se a extensão está sendo carregada, você pode fazer isso acessando a página phpinfo do xampp, o endereço dela normalmente é localhost/dashboard/phpinfo.php quando o apache do xampp está em execução.

Nesta página procure por PDO, há uma seção que informar quais drivers foram carregados, o titulo da seção é PDO, nela há uma linha na tabela chamada PDO drivers, ela informa os drivers carregados.

Caso o MySQL não esteja lá reveja o seu php.ini para ter certeza que a linha extension=php_pdo_mysql.dll não possui um ; na frente, depois de remover (caso necessário) reinicie o servidor apache para recarregar as configurações e extensões e visite novamente a página.

Caso ainda assim o PDO para o MySQL não apareça como instalado verifique se na pasta ext do PHP há um arquivo chamado php_pdo_mysql.dll, caso não exista tente baixar o xampp novamente e copie este arquivo para esta pasta, após fazer este procedimento reinicie novamente o apache para recarregar as extensões.

Em caso de dúvidas, por gentileza, entre em contato.

Rafael, Tarde.

Muito Obrigado, pelo retorno.

Verifiquei todos os pontos e arquivos os quais você apontou e tudo está de acordo. A extension=php_pdo_mysql.dll está habilitada e o driver está instalado no php. Mas o erro persisti, existe mas alguma medida para sanar o mesmo?

Desde já agradeço.