<?php
// Set up error reporting for debugging
error_reporting(E_ALL);
ini_set('display_errors', 1);
// Include database configuration
require_once 'admin/database/db_config.php';
echo "<h1>Adding course_code column to courses table</h1>";
// Check if courses table exists
$table_check = $conn->query("SHOW TABLES LIKE 'courses'");
if ($table_check->num_rows === 0) {
echo "<p>Error: Table 'courses' does not exist in the database.</p>";
exit;
}
// Check if course_code column already exists
$column_check = $conn->query("SHOW COLUMNS FROM `courses` LIKE 'course_code'");
if ($column_check->num_rows > 0) {
echo "<p>Column 'course_code' already exists in table 'courses'.</p>";
} else {
// Add course_code column
$add_column = $conn->query("ALTER TABLE `courses` ADD COLUMN `course_code` VARCHAR(20) DEFAULT NULL");
if ($add_column) {
echo "<p>Successfully added column 'course_code' to table 'courses'.</p>";
} else {
echo "<p>Error: Failed to add column 'course_code' to table 'courses': " . $conn->error . "</p>";
exit;
}
}
// Update existing courses with default course codes
$update_query = $conn->query("SELECT id FROM courses WHERE course_code IS NULL");
if ($update_query && $update_query->num_rows > 0) {
$updated_count = 0;
while ($course = $update_query->fetch_assoc()) {
$course_id = $course['id'];
$default_code = 'C' . sprintf('%03d', $course_id);
// Update the course with a default code
if ($conn->query("UPDATE courses SET course_code = '$default_code' WHERE id = $course_id")) {
$updated_count++;
} else {
echo "<p>Error updating course ID $course_id: " . $conn->error . "</p>";
}
}
if ($updated_count > 0) {
echo "<p>Updated $updated_count courses with default course codes.</p>";
}
} else {
echo "<p>No courses need updating or failed to query courses: " . $conn->error . "</p>";
}
echo "<p>Process completed. <a href='enroll/payment.php'>Return to payment page</a></p>";
?>