From d731f0e430203fec43a870242d35b125ae3d6ddb Mon Sep 17 00:00:00 2001 From: M_Viper Date: Sun, 25 Feb 2024 15:25:57 +0000 Subject: [PATCH] install.php aktualisiert --- install.php | 240 +++++++++++++++++++++++++++++----------------------- 1 file changed, 136 insertions(+), 104 deletions(-) diff --git a/install.php b/install.php index 07c41f8..416ddeb 100644 --- a/install.php +++ b/install.php @@ -1,104 +1,136 @@ - - - - - - - Materialverwaltung Installer - - -
-

Materialverwaltung Installer

- - connect_error) { - die("Verbindung zur Datenbank fehlgeschlagen: " . $conn->connect_error); - } - - // Datenbank erstellen - $sql_create_db = "CREATE DATABASE IF NOT EXISTS $database"; - if ($conn->query($sql_create_db) === TRUE) { - echo "

Datenbank erfolgreich erstellt.

"; - - // Datenbank auswählen - $conn->select_db($database); - - // Tabelle erstellen - $sql_create_table = "CREATE TABLE IF NOT EXISTS materials ( - id INT AUTO_INCREMENT PRIMARY KEY, - item_name VARCHAR(255) NOT NULL, - manufacturer VARCHAR(255) NOT NULL, - location VARCHAR(255) NOT NULL, - amount_should INT NOT NULL, - amount_is INT NOT NULL, - expiration_date DATE NOT NULL, - barcode VARCHAR(255) NOT NULL, - image VARCHAR(255), - email VARCHAR(255) NOT NULL - )"; - if ($conn->query($sql_create_table) === TRUE) { - echo "

Tabelle 'materials' erfolgreich erstellt.

"; - - // Speichern der Daten in der config.php-Datei - $config_content = ""; - - file_put_contents('config/config.php', $config_content); - - // Weiterleitung zur Indexseite nach erfolgreicher Installation - header("Location: index.php"); - exit(); - } else { - echo "

Fehler beim Erstellen der Tabelle: " . $conn->error . "

"; - } - } else { - echo "

Fehler beim Erstellen der Datenbank: " . $conn->error . "

"; - } - - // Datenbankverbindung schließen - $conn->close(); - } - ?> - -

Datenbankverbindung eingeben

-
"> -
- - -
-
- - -
-
- - -
-
- - -
-
- - -
- -
-
- - +connect_error) { + die("Verbindung zur Datenbank fehlgeschlagen: " . $conn->connect_error); +} + +if ($_SERVER["REQUEST_METHOD"] == "POST") { + // Formulardaten abrufen + $host = $_POST["host"]; + $username = $_POST["username"]; + $password = $_POST["password"]; + $database = $_POST["database"]; + $email = $_POST["email"]; + $notification_days = $_POST["notification_days"]; // Hinzugefügtes Feld für die Benachrichtigungstage + + // Datenbank erstellen + $sql_create_db = "CREATE DATABASE IF NOT EXISTS $database"; + if ($conn->query($sql_create_db) === TRUE) { + echo "

Datenbank erfolgreich erstellt.

"; + + // Datenbank auswählen + $conn->select_db($database); + + // Tabelle erstellen + $sql_create_table = "CREATE TABLE IF NOT EXISTS materials ( + id INT AUTO_INCREMENT PRIMARY KEY, + item_name VARCHAR(255) NOT NULL, + manufacturer VARCHAR(255) NOT NULL, + location VARCHAR(255) NOT NULL, + amount_should INT NOT NULL, + amount_is INT NOT NULL, + expiration_date DATE NOT NULL, + barcode VARCHAR(255) NOT NULL, + image VARCHAR(255), + email VARCHAR(255) NOT NULL, + notification_days INT NOT NULL DEFAULT 0 + )"; + if ($conn->query($sql_create_table) === TRUE) { + echo "

Tabelle 'materials' erfolgreich erstellt.

"; + + // Speichern der Daten in der config.php-Datei + $config_content = ""; + + file_put_contents('config/config.php', $config_content); + + // Weiterleitung zur Indexseite nach erfolgreicher Installation + header("Location: index.php"); + exit(); + } else { + echo "

Fehler beim Erstellen der Tabelle: " . $conn->error . "

"; + } + } else { + echo "

Fehler beim Erstellen der Datenbank: " . $conn->error . "

"; + } + + // Datenbankverbindung schließen + $conn->close(); + + // Aktuellen Pfad ermitteln + $current_path = getcwd(); + + // Pfad zur PHP-Datei, die den Cron-Job ausführt + $cron_script_path = $current_path . '/notification_cron.php'; + + // Crontab-Zeile erstellen (hier: Täglich um 13 Uhr) + $cron_job = '0 13 * * * /usr/bin/php ' . $cron_script_path; + + // Crontab einrichten + exec('crontab -l', $existing_cron_jobs); // Aktuelle Crontab abrufen + if (!in_array($cron_job, $existing_cron_jobs)) { + $existing_cron_jobs[] = $cron_job; // Neuen Cron-Job hinzufügen + $new_cron_tab = implode("\n", $existing_cron_jobs); // Crontab zusammenführen + file_put_contents('/tmp/crontab.txt', $new_cron_tab); // Temporäre Crontab-Datei erstellen + exec('crontab /tmp/crontab.txt'); // Neue Crontab-Datei einrichten + unlink('/tmp/crontab.txt'); // Temporäre Crontab-Datei löschen + } +} +?> + + + + + + + + + Viper Installer + + +
+
Logo
+

Installer

+ +

Datenbankverbindung eingeben

+
"> +
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+ +
+
+ +© copyright 2024 by M_Viper +