<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

include '../includes/header2.php';

echo "<div style='padding: 20px;'>";
echo "<h2>Diagnóstico do Banco de Dados</h2>";

$db = new SQLite3('../a/.eggziedb.db');

// Verificar tabela ibo
$result = $db->query("SELECT sql FROM sqlite_master WHERE type='table' AND name='ibo'");
$table_info = $result->fetchArray(SQLITE3_ASSOC);
echo "<h3>Estrutura da tabela ibo:</h3>";
echo "<pre>" . htmlspecialchars($table_info['sql']) . "</pre>";

// Verificar colunas da tabela
$result = $db->query("PRAGMA table_info(ibo)");
echo "<h3>Colunas da tabela ibo:</h3>";
echo "<table border='1' cellpadding='5'>";
echo "<tr><th>Nome</th><th>Tipo</th><th>Default</th></tr>";
while ($col = $result->fetchArray(SQLITE3_ASSOC)) {
    echo "<tr>";
    echo "<td>" . $col['name'] . "</td>";
    echo "<td>" . $col['type'] . "</td>";
    echo "<td>" . $col['dflt_value'] . "</td>";
    echo "</tr>";
}
echo "</table>";

// Verificar dados existentes
$result = $db->query("SELECT COUNT(*) as total FROM ibo");
$total = $result->fetchArray(SQLITE3_ASSOC);
echo "<h3>Total de registros: " . $total['total'] . "</h3>";

// Testar inserção manual
echo "<h3>Teste de Inserção Manual:</h3>";

$test_mac = "AA:BB:CC:DD:EE:FF";
$test_user = "teste_" . time();
$test_pass = "123456";
$test_date = date('Y-m-d', strtotime('+1 year'));
$test_url = "http://teste.com:8080";
$test_title = "Teste";
$test_seller = $seller_name;
$test_extra = "Teste";
$test_is_test = 0;

$sql = "INSERT INTO ibo (mac_address, username, password, expire_date, url, title, created_at, seller, extra, is_test) 
        VALUES ('$test_mac', '$test_user', '$test_pass', '$test_date', '$test_url', '$test_title', datetime('now'), '$test_seller', '$test_extra', $test_is_test)";

echo "<p>SQL a ser executado:</p>";
echo "<pre>" . htmlspecialchars($sql) . "</pre>";

$result = $db->exec($sql);

if ($result === false) {
    echo "<p style='color:red'>Erro: " . $db->lastErrorMsg() . "</p>";
} else {
    $last_id = $db->lastInsertRowID();
    if ($last_id > 0) {
        echo "<p style='color:green'>✓ Inserção manual bem sucedida! ID: $last_id</p>";
        // Limpar teste
        $db->exec("DELETE FROM ibo WHERE id = $last_id");
        echo "<p style='color:blue'>Registro de teste removido</p>";
    } else {
        echo "<p style='color:orange'>⚠ Execução retornou true, mas nenhum ID foi gerado</p>";
    }
}

$db->close();

echo "<br><a href='users_create.php' class='btn btn-primary'>Voltar para criação</a>";
echo "</div>";

include '../includes/footer2.php';
?>