36 lines
1.5 KiB
PHP
36 lines
1.5 KiB
PHP
<?php
|
|
/**
|
|
* AçãoOpção — conexão com o banco de dados MySQL.
|
|
* Inclua (require_once) antes de qualquer uso de $pdo.
|
|
* As credenciais usadas aqui vêm de includes/config.php (AO_BANCOS),
|
|
* de acordo com o ambiente ativo (desenvolvimento/produção).
|
|
*/
|
|
|
|
require_once __DIR__ . '/config.php';
|
|
|
|
try {
|
|
$pdo = new PDO(
|
|
"mysql:host=" . AO_DB_HOST . ";dbname=" . AO_DB_NOME . ";charset=utf8mb4",
|
|
AO_DB_USUARIO,
|
|
AO_DB_SENHA,
|
|
[
|
|
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
|
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
|
|
PDO::ATTR_EMULATE_PREPARES => false,
|
|
]
|
|
);
|
|
} catch (PDOException $e) {
|
|
http_response_code(500);
|
|
die(
|
|
'<div style="font-family: sans-serif; max-width: 640px; margin: 60px auto; padding: 24px; ' .
|
|
'border: 1px solid #e2b3ab; background: #fdf1ef; color: #7a2c22; border-radius: 8px;">' .
|
|
'<h2 style="margin-top:0;">Não foi possível conectar ao banco de dados</h2>' .
|
|
'<p>Ambiente ativo: <strong>' . htmlspecialchars(AO_AMBIENTE) . '</strong>. Verifique se o MySQL está ' .
|
|
'ativo, se o banco <strong>' . htmlspecialchars(AO_DB_NOME) . '</strong> foi criado a partir de ' .
|
|
'<code>includes/esquema.sql</code>, e se o usuário/senha em <code>includes/config.php</code> ' .
|
|
'(bloco <code>AO_BANCOS</code>) estão corretos para este ambiente.</p>' .
|
|
'<p style="font-size: 0.85rem; opacity: .8;">Detalhe técnico: ' . htmlspecialchars($e->getMessage()) . '</p>' .
|
|
'</div>'
|
|
);
|
|
}
|