Material_Verwaltungs_Tool/check_expiration.php

51 lines
1.6 KiB
PHP

<?php
// Datenbankverbindung herstellen
include_once 'config/config.php';
// Verbindung zur Datenbank herstellen
$conn = new mysqli($host, $username, $password, $database);
// Prüfen, ob die Verbindung erfolgreich hergestellt wurde
if ($conn->connect_error) {
die("Verbindung zur Datenbank fehlgeschlagen: " . $conn->connect_error);
}
// Prüfen, ob es 13 Uhr ist
if (date('H') == 13) {
// Überprüfen der Artikel mit nahendem Ablaufdatum
$checkDate = date('Y-m-d', strtotime('+10 days'));
$sql = "SELECT * FROM materials WHERE expiration_date <= '$checkDate'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// E-Mail senden
$to = $email;
$subject = 'Wichtige Benachrichtigung: Ablaufdatum nah';
$headers = "From: Material@no-mail.com\r\n";
// Weitere Header hier hinzufügen, falls benötigt
// E-Mail-Nachricht erstellen
$message = '<html><body>';
$message .= '<h1>Wichtige Benachrichtigung: Ablaufdatum nah</h1>';
$message .= '<p>Die Haltbarkeit folgender Artikel läuft in den nächsten 10 Tagen ab:</p>';
$message .= '<ul>';
// Artikelinformationen zur Nachricht hinzufügen
while ($row = $result->fetch_assoc()) {
$message .= '<li>Die Haltbarkeit von "' . $row['item_name'] . '" läuft am ' . $row['expiration_date'] . ' ab.</li>';
}
$message .= '</ul>';
$message .= '</body></html>';
// E-Mail senden
mail($to, $subject, $message, $headers);
} else {
echo "Keine Artikel mit nahendem Ablaufdatum gefunden.";
}
}
// Datenbankverbindung schließen
$conn->close();
?>