Olá, para avançar nos tópicos da aula me propus a fazer 2 mudanças:
1) trocar o banco de dados de sqlLite para MariaDB (tudo certo!)
2) listar os alunos direto no navegador ao invés de listar no terminal
Copiei o código do /commands/buscar-alunos.php para o index.php do meu servidor.
Porém ao acessar via navegador recebo o seguinte erro:
Fatal error: Uncaught PDOException: SQLSTATE[HY000] [2002] Connection refused in /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php on line 112
( ! ) Doctrine\DBAL\Exception\ConnectionException: An exception occurred in driver: SQLSTATE[HY000] [2002] Connection refused in /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php on line 112
O meu código do index.php esta assim:
<?php
use Alura\Doctrine\Entity\Aluno;
use Alura\Doctrine\Helper\EntityManagerFactory;
require_once __DIR__ . '/vendor/autoload.php';
$entityManagerFactory = new EntityManagerFactory();
$entityManager = $entityManagerFactory->getEntityManager();
// lista todos os Alunos
$alunoRepository = $entityManager->getRepository(Aluno::class);
$alunoList = $alunoRepository->findAll();
/**
* $var Aluno[] $alunoList
*/
foreach ($alunoList as $aluno) {
echo "ID: {$aluno->getId()} \nNome: {$aluno->getNome()}\n\n";
}
Quando executo o mesmo código no buscar-alunos.php no terminal funciona perfeitamente.
Consigo também me conectar ao banco via PHP Storm como o Vinicius ensinou na aula e também me conectar via cliente mysql externo.
Não entendi, pois apesar do banco estar tudo ok, esta recusando a conexão quando ela é solicitada no index.
Alguém já passou por algo semelhante?
Grato!