query("SELECT COUNT(*) FROM schools"); if ($stmt->fetchColumn() == 0) { $registration_open = true; } } catch (PDOException $e) { $error = 'Database error: ' . $e->getMessage(); } if ($registration_open && $_SERVER['REQUEST_METHOD'] === 'POST') { $username = $_POST['username'] ?? null; $password = $_POST['password'] ?? null; $school_name = $_POST['school_name'] ?? null; $email = $_POST['email'] ?? null; if (empty($username) || empty($password) || empty($school_name) || empty($email)) { $error = 'All fields are required.'; } else { try { $pdo->beginTransaction(); // Check if school name already exists $stmt = $pdo->prepare("SELECT id FROM schools WHERE name = ?"); $stmt->execute([$school_name]); if ($stmt->fetch()) { $error = 'School name already taken. Please choose another one.'; $pdo->rollBack(); } else { // Insert new school $stmt = $pdo->prepare("INSERT INTO schools (name) VALUES (?)"); $stmt->execute([$school_name]); $school_id = $pdo->lastInsertId(); // Check if username already exists $stmt = $pdo->prepare("SELECT id FROM users WHERE username = ?"); $stmt->execute([$username]); if ($stmt->fetch()) { $error = 'Username already taken. Please choose another one.'; $pdo->rollBack(); } else { // Hash the password $hashed_password = password_hash($password, PASSWORD_DEFAULT); // Insert new user $stmt = $pdo->prepare("INSERT INTO users (username, password, email, school_id, role) VALUES (?, ?, ?, ?, 'admin')"); if ($stmt->execute([$username, $hashed_password, $email, $school_id])) { $pdo->commit(); $message = 'Registration successful! You can now login.'; } else { $error = 'Failed to register user.'; $pdo->rollBack(); } } } } catch (PDOException $e) { $error = 'Database error: ' . $e->getMessage(); if ($pdo->inTransaction()) { $pdo->rollBack(); } } } } ?> Register - Haki Schedule

Create an Admin Account

Already have an account? Login here.

Registration is currently closed. Only one school can be registered.

Go to Login