| Server IP : 173.209.174.21 / Your IP : 216.73.216.89 Web Server : Apache/2.4.58 (Ubuntu) System : Linux wcfs-server 6.8.0-124-generic #124-Ubuntu SMP PREEMPT_DYNAMIC Tue May 26 13:00:45 UTC 2026 x86_64 User : nodor ( 1000) PHP Version : 8.3.6 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/wcsd/School-alert/Backup files/ |
Upload File : |
<?php
session_start();
require 'config/db.php';
// Enable error reporting for debugging
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
// Function to send email notifications
function sendAlertEmail($type, $location, $message, $recipients) {
$subject = "New Alert: $type";
$body = "An alert has been created.\n\n";
$body .= "Type: $type\n";
$body .= "Location: $location\n";
$body .= "Message: $message\n";
$body .= "Please check the alert system for more details.";
// Loop through each recipient and send the email
foreach ($recipients as $recipient) {
mail($recipient, $subject, $body, "From: alerts@yourdomain.com");
}
}
// Check if the user is logged in and has admin privileges
if (!isset($_SESSION['user_id']) || $_SESSION['role'] !== 'admin') {
header('Location: dashboard.php');
exit();
}
// Check if school_id is set
if (!isset($_SESSION['school_id'])) {
die('Error: school_id is not set in the session.');
}
// Process form submission
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$type = $_POST['type'];
$location = $_POST['location'];
$message = $_POST['message'];
$school_id = $_SESSION['school_id'];
try {
// Insert alert into the database
$stmt = $pdo->prepare("INSERT INTO alerts (school_id, type, location, message, status) VALUES (?, ?, ?, ?, 'active')");
$stmt->execute([$school_id, $type, $location, $message]);
// Define recipients for the email notification
$recipients = ['admin@schooldomain.com', 'staff@schooldomain.com']; // Replace with actual recipients
// Send email notification
sendAlertEmail($type, $location, $message, $recipients);
// Redirect to dashboard after successful alert creation
header('Location: dashboard.php');
exit();
} catch (PDOException $e) {
echo "Error: Could not create alert. " . $e->getMessage();
}
}
?>
<?php include __DIR__ . '/views/header.php'; ?>
<div class="form-container">
<h2>Create Alert</h2>
<form method="POST" action="create_alert.php">
<label for="type">Type:</label>
<select name="type" id="type" required>
<option value="lockdown">Lockdown</option>
<option value="evacuation">Evacuation</option>
<option value="shelter_in_place">Shelter in Place</option>
<option value="earthquake">Earthquake</option>
<option value="fire_drill">Fire Drill</option>
<option value="modified_lockdown">Modified Lockdown</option>
<option value="other">Other</option>
</select>
<label for="location">Location or Room:</label>
<input type="text" id="location" name="location" required>
<label for="message">Message:</label>
<textarea name="message" id="message" rows="5" required></textarea>
<button type="submit" class="submit-button">Create Alert</button>
</form>
</div>
<?php include __DIR__ . '/views/footer.php'; ?>