Sindbad~EG File Manager
<?php
require_once 'config/config.php';
echo "<h2>Debug Member Codes System</h2>";
try {
$db = Database::getInstance()->getConnection();
// Check if tables exist
echo "<h3>1. Table Existence Check</h3>";
$tables = ['events', 'memberuser_codes', 'members'];
foreach ($tables as $table) {
$stmt = $db->query("SHOW TABLES LIKE '{$table}'");
if ($stmt->fetch()) {
echo "<p style='color: green;'>✅ Table '{$table}' exists</p>";
} else {
echo "<p style='color: red;'>❌ Table '{$table}' does not exist</p>";
}
}
// Check events
echo "<h3>2. Events Data</h3>";
try {
$stmt = $db->query("SELECT COUNT(*) as count FROM events");
$result = $stmt->fetch();
echo "<p>Events count: " . $result['count'] . "</p>";
if ($result['count'] > 0) {
$stmt = $db->query("SELECT id, name FROM events LIMIT 5");
$events = $stmt->fetchAll();
echo "<ul>";
foreach ($events as $event) {
echo "<li>ID: {$event['id']}, Name: {$event['name']}</li>";
}
echo "</ul>";
}
} catch (Exception $e) {
echo "<p style='color: red;'>Error checking events: " . $e->getMessage() . "</p>";
}
// Check member codes
echo "<h3>3. Member Codes Data</h3>";
try {
$stmt = $db->query("SELECT COUNT(*) as count FROM memberuser_codes WHERE code_type = 'member'");
$result = $stmt->fetch();
echo "<p>Member codes count: " . $result['count'] . "</p>";
if ($result['count'] > 0) {
$stmt = $db->query("SELECT mc.id, mc.tracking_code, mc.member_id, m.first_name, m.last_name FROM memberuser_codes mc JOIN members m ON mc.member_id = m.id WHERE mc.code_type = 'member' LIMIT 5");
$codes = $stmt->fetchAll();
echo "<ul>";
foreach ($codes as $code) {
echo "<li>ID: {$code['id']}, Code: {$code['tracking_code']}, Member: {$code['first_name']} {$code['last_name']}</li>";
}
echo "</ul>";
}
} catch (Exception $e) {
echo "<p style='color: red;'>Error checking member codes: " . $e->getMessage() . "</p>";
}
// Check members
echo "<h3>4. Members Data</h3>";
try {
$stmt = $db->query("SELECT COUNT(*) as count FROM members WHERE is_active = 1");
$result = $stmt->fetch();
echo "<p>Active members count: " . $result['count'] . "</p>";
if ($result['count'] > 0) {
// Check if membershipcard_id column exists
$columnExists = false;
try {
$checkStmt = $db->query("SHOW COLUMNS FROM members LIKE 'membershipcard_id'");
$columnExists = $checkStmt->fetch() !== false;
} catch (PDOException $e) {
// Column doesn't exist
}
$memberIdField = $columnExists ? 'm.membershipcard_id' : 'CONCAT("MC", YEAR(CURDATE()), LPAD(m.id, 6, "0")) as membershipcard_id';
$stmt = $db->query("SELECT m.id, m.first_name, m.last_name, {$memberIdField} FROM members m WHERE m.is_active = 1 LIMIT 5");
$members = $stmt->fetchAll();
echo "<ul>";
foreach ($members as $member) {
echo "<li>ID: {$member['id']}, Name: {$member['first_name']} {$member['last_name']}, Card ID: {$member['membershipcard_id']}</li>";
}
echo "</ul>";
}
} catch (Exception $e) {
echo "<p style='color: red;'>Error checking members: " . $e->getMessage() . "</p>";
}
// Test API endpoint
echo "<h3>5. API Test</h3>";
if (isset($_GET['test_member_id'])) {
$memberId = $_GET['test_member_id'];
echo "<p>Testing API for member ID: {$memberId}</p>";
// Simulate API call
$_GET['member_id'] = $memberId;
ob_start();
include 'api/get-member-codes.php';
$apiResponse = ob_get_clean();
echo "<pre style='background: #f5f5f5; padding: 10px; border: 1px solid #ddd;'>";
echo htmlspecialchars($apiResponse);
echo "</pre>";
} else {
// Show first member ID for testing
try {
$stmt = $db->query("SELECT id FROM members WHERE is_active = 1 LIMIT 1");
$member = $stmt->fetch();
if ($member) {
echo "<p><a href='?test_member_id={$member['id']}'>Test API with Member ID: {$member['id']}</a></p>";
}
} catch (Exception $e) {
echo "<p style='color: red;'>Error getting test member: " . $e->getMessage() . "</p>";
}
}
} catch (Exception $e) {
echo "<p style='color: red;'>Database connection error: " . $e->getMessage() . "</p>";
}
echo "<hr>";
echo "<p><a href='modules/membership/cards.php'>← Back to Cards</a> | <a href='modules/membership/codes.php'>Codes Page</a></p>";
?>
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists