<?php
// Diagnóstico completo do banco de dados
header('Content-Type: application/json; charset=utf-8');
header('Access-Control-Allow-Origin: *');

$resultados = [];

// Teste 1: Credenciais atuais
try {
    $pdo = new PDO(
        "mysql:host=localhost;dbname=pinheir3_controle_frotasV1.1;charset=utf8mb4",
        "pinheir3_admin",
        "080880Gelboy",
        [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]
    );
    
    $resultados['conexao_atual'] = 'SUCESSO';
    
    // Testar tabelas
    $tabelas = ['viagens', 'usuarios', 'veiculos'];
    foreach ($tabelas as $tabela) {
        try {
            $stmt = $pdo->query("SELECT COUNT(*) as total FROM $tabela LIMIT 1");
            $count = $stmt->fetch(PDO::FETCH_ASSOC);
            $resultados["tabela_$tabela"] = "OK - {$count['total']} registros";
        } catch (Exception $e) {
            $resultados["tabela_$tabela"] = "ERRO: " . $e->getMessage();
        }
    }
    
} catch (PDOException $e) {
    $resultados['conexao_atual'] = 'ERRO: ' . $e->getMessage();
}

// Teste 2: Credenciais alternativas comuns
$credenciais_teste = [
    ['host' => 'localhost', 'db' => 'controle_frotas', 'user' => 'root', 'pass' => ''],
    ['host' => 'localhost', 'db' => 'controle_frotas', 'user' => 'admin', 'pass' => 'admin'],
    ['host' => 'localhost', 'db' => 'pinheir3_controle_frotasV1.1', 'user' => 'root', 'pass' => ''],
    ['host' => 'localhost', 'db' => 'pinheir3_controle_frotasV1.1', 'user' => 'pinheir3_controle_frotasV1.1', 'pass' => '080880Gelboy'],
];

foreach ($credenciais_teste as $i => $cred) {
    try {
        $pdo_teste = new PDO(
            "mysql:host={$cred['host']};dbname={$cred['db']};charset=utf8mb4",
            $cred['user'],
            $cred['pass'],
            [PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]
        );
        $resultados["teste_$i"] = "SUCESSO: {$cred['user']}@{$cred['host']}/{$cred['db']}";
    } catch (PDOException $e) {
        $resultados["teste_$i"] = "ERRO: {$cred['user']}@{$cred['host']}/{$cred['db']} - " . substr($e->getMessage(), 0, 100);
    }
}

// Verificar estrutura esperada
if (isset($pdo)) {
    try {
        $stmt = $pdo->query("SHOW TABLES");
        $tabelas_existentes = $stmt->fetchAll(PDO::FETCH_COLUMN);
        $resultados['tabelas_encontradas'] = $tabelas_existentes;
        
        // Verificar se existe pelo menos uma estrutura básica
        if (in_array('viagens', $tabelas_existentes)) {
            $stmt = $pdo->query("DESCRIBE viagens");
            $colunas = $stmt->fetchAll(PDO::FETCH_COLUMN);
            $resultados['colunas_viagens'] = $colunas;
        }
        
    } catch (Exception $e) {
        $resultados['estrutura_erro'] = $e->getMessage();
    }
}

echo json_encode([
    'success' => true,
    'timestamp' => date('Y-m-d H:i:s'),
    'diagnostico' => $resultados
], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE); 
