Bom dia,
Após terminar o curso ainda fiquei com uma duvida, pois ja tinha criado uma conexão com o banco de dados seguindo um outro curso que estou fazendo por fora, mas como estou apenas seguindo passo a passo e como não detalhou muito sobre o PDO quis fazer o curso da alura pra complementar esta parte de PDO. No outro curso acesso o banco de dados normalmente usando pdo e funciona, aceita o driver do mysql. Criei o arquivo ConnectionCreator similar ao que voce fez na sua penultima aula (so substitui o nome do host por localhost e o nome do banco que no meu caso é aulapdo.
criei o arquivo parecido com o do professor para criar tabelas neste banco e chamei de criar-tabelas-mysql.php
<?php
use Alura\Pdo\Domain\Model\Student;
use Alura\Pdo\Domain\Infrastructure\Persistence\ConnectionCreator;
use Alura\Pdo\Domain\Infrastructure\Repository\PdoStudentRepository;
require_once 'vendor/autoload.php';
$connection = ConnectionCreator::createConnection();
$createTableSql = '
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY,
name TEXT,
birth_date TEXT
);
CREATE TABLE IF NOT EXISTS phones (
id INTEGER PRIMARY KEY,
area_code TEXT,
number TEXT,
student_id INTEGER,
FOREIGN KEY(student_id) REFERENCES students(id)
);
';
$connection->exec($createTableSql);
mas quando executo este arquivo criar-tabelas-mysql.php ele aponta este erro
: PHP Fatal error: Uncaught PDOException: could not find driver in C:\xampp\htdocs\phppdo\src\Domain\Infrastructure\Persistence\ConnectionCreator.php:23
o erro aponta para esta linha no arquivo ConnectionCreator.php
$connection = new PDO("mysql:host=localhost;dbname=" . 'aulapdo', 'root','');
(tinha tentado assim tambem
$connection = new PDO('mysql:host=localhost;dbname= aulapdo', 'root','');
mas tinha dado o mesmo erro ..acredito que não está encontrando o driver mysql )
Preciso instalar este driver mysql para cada pasta de projeto que eu for usar?
OBS: esta linha relativa ao pdo_mysql já está descomentada no php.ini
Se alguem puder me ajudar com este problema de não encontrar o driver.
Observação, estou planejando fazer o curso de Doctrine em seguida, não sei se lá irá abordar este detalhe, se for aí posso esperar e ver por lá.
Obrigada