38458-vm/check_sync.php
2026-02-19 22:34:47 +00:00

42 lines
1.4 KiB
PHP

<?php
require_once __DIR__ . '/db/config.php';
$supabasePass = 'gA82h8K80T5QUAwi';
$supabaseHost = "aws-1-ap-southeast-1.pooler.supabase.com";
$supabaseUser = "postgres.siqeqnizegizxemrfgkf";
$supabaseDb = "postgres";
$supabasePort = "6543";
try {
echo "Connecting to local MariaDB...\n";
$localPdo = db();
echo "Connecting to Supabase PostgreSQL...\n";
$dsn = "pgsql:host=$supabaseHost;port=$supabasePort;dbname=$supabaseDb";
$supabasePdo = new PDO($dsn, $supabaseUser, $supabasePass, [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
]);
$tables = ["users", "elections", "positions", "election_assignments", "parties", "candidates", "votes", "audit_logs"];
echo "\nComparison Table:\n";
echo str_pad("Table", 25) . " | " . str_pad("Local", 10) . " | " . str_pad("Supabase", 10) . "\n";
echo str_repeat("-", 50) . "\n";
foreach ($tables as $table) {
$localCount = $localPdo->query("SELECT COUNT(*) FROM $table")->fetchColumn();
// For Supabase, check if table exists first
try {
$supabaseCount = $supabasePdo->query("SELECT COUNT(*) FROM $table")->fetchColumn();
} catch (Exception $e) {
$supabaseCount = "N/A (Error)";
}
echo str_pad($table, 25) . " | " . str_pad($localCount, 10) . " | " . str_pad($supabaseCount, 10) . "\n";
}
} catch (Exception $e) {
echo "Error: " . $e->getMessage() . "\n";
}