Einfache Serververwaltung mit PHP und MySQL: Unterschied zwischen den Versionen
(Die Seite wurde neu angelegt: „= Projekt: Einfache Serververwaltung mit PHP und MySQL = == Ziel des Projekts == Dieses Projekt zeigt Schritt für Schritt, wie eine einfache Serververwaltung…“) |
|||
| Zeile 2: | Zeile 2: | ||
== Ziel des Projekts == | == Ziel des Projekts == | ||
| − | Dieses Projekt zeigt | + | Dieses Projekt zeigt, wie eine einfache Serververwaltungs-Webseite aufgebaut wird. Dabei lernen die Teilnehmer die grundlegende Interaktion zwischen PHP, MySQL und einer Web-Oberfläche. |
Die Webseite soll folgende Daten verwalten: | Die Webseite soll folgende Daten verwalten: | ||
| Zeile 17: | Zeile 17: | ||
* Am Ende wird die Webseite mit HTTPS gesichert | * Am Ende wird die Webseite mit HTTPS gesichert | ||
| − | == | + | == Einrichtung der Datenbank == |
Zuerst wird eine MySQL-Datenbank eingerichtet, um die Serverinformationen zu speichern. | Zuerst wird eine MySQL-Datenbank eingerichtet, um die Serverinformationen zu speichern. | ||
| Zeile 45: | Zeile 45: | ||
); | ); | ||
| − | == | + | == PHP-Skript für Datenbankverbindung == |
Ein PHP-Skript wird erstellt, um sich mit der Datenbank zu verbinden. | Ein PHP-Skript wird erstellt, um sich mit der Datenbank zu verbinden. | ||
| Zeile 63: | Zeile 63: | ||
</pre> | </pre> | ||
| − | == | + | == Formular für das Eintragen neuer Server == |
Ein einfaches HTML-Formular ermöglicht das Eintragen neuer Server. | Ein einfaches HTML-Formular ermöglicht das Eintragen neuer Server. | ||
| Zeile 78: | Zeile 78: | ||
</pre> | </pre> | ||
| − | == | + | == PHP-Skript zur Verarbeitung des Formulars == |
Das Skript speichert die eingegebenen Daten in die Datenbank. | Das Skript speichert die eingegebenen Daten in die Datenbank. | ||
| Zeile 93: | Zeile 93: | ||
$hauptdienst = $_POST["hauptdienst"]; | $hauptdienst = $_POST["hauptdienst"]; | ||
| − | $sql = "INSERT INTO server (rechnername, ip_adresse, betriebssystem, festplattenspeicher, ram, hauptdienst) | + | $sql = "INSERT INTO server (rechnername, ip_adresse, betriebssystem, festplattenspeicher, ram, hauptdienst) |
VALUES ('$rechnername', '$ip_adresse', '$betriebssystem', '$festplattenspeicher', '$ram', '$hauptdienst')"; | VALUES ('$rechnername', '$ip_adresse', '$betriebssystem', '$festplattenspeicher', '$ram', '$hauptdienst')"; | ||
| Zeile 105: | Zeile 105: | ||
</pre> | </pre> | ||
| − | == | + | == Anzeige der Serverliste == |
Eine Liste aller Server wird als HTML-Tabelle ausgegeben. | Eine Liste aller Server wird als HTML-Tabelle ausgegeben. | ||
| Zeile 127: | Zeile 127: | ||
</pre> | </pre> | ||
| − | == | + | == Benutzerverwaltung == |
Ein Registrierungs- und Login-System wird integriert, um Benutzerrechte zu verwalten. Nur Admins können Einträge bearbeiten oder hinzufügen. | Ein Registrierungs- und Login-System wird integriert, um Benutzerrechte zu verwalten. Nur Admins können Einträge bearbeiten oder hinzufügen. | ||
| − | == | + | == Verschlüsselung mit HTTPS == |
Die gesamte Seite wird auf HTTPS umgestellt, um die Sicherheit zu erhöhen. | Die gesamte Seite wird auf HTTPS umgestellt, um die Sicherheit zu erhöhen. | ||
== Fazit == | == Fazit == | ||
| − | Dieses Projekt zeigt | + | Dieses Projekt zeigt, wie eine dynamische Webanwendung für die Serververwaltung entsteht. Durch die einfache Struktur können alle Teilnehmer den Zusammenhang zwischen Datenbank, PHP und HTML verstehen. |
Version vom 15. März 2025, 10:35 Uhr
Projekt: Einfache Serververwaltung mit PHP und MySQL
Ziel des Projekts
Dieses Projekt zeigt, wie eine einfache Serververwaltungs-Webseite aufgebaut wird. Dabei lernen die Teilnehmer die grundlegende Interaktion zwischen PHP, MySQL und einer Web-Oberfläche.
Die Webseite soll folgende Daten verwalten:
- Rechnername
- IP-Adresse mit Netzmaske
- Betriebssystem
- Festplattenspeicher
- RAM
- Hauptdienst
Zusätzlich wird eine Benutzerverwaltung integriert:
- Bestimmte Benutzer dürfen Daten eintragen und ändern
- Andere Benutzer dürfen nur Daten lesen
- Am Ende wird die Webseite mit HTTPS gesichert
Einrichtung der Datenbank
Zuerst wird eine MySQL-Datenbank eingerichtet, um die Serverinformationen zu speichern.
Datenbank erstellen.
- create database serververwaltung;
Zur neuen Datenbank wechseln.
- use serververwaltung;
Tabelle für die Serverdaten anlegen.
- create table server (
id int auto_increment primary key, rechnername varchar(50) not null, ip_adresse varchar(50) not null, betriebssystem varchar(50) not null, festplattenspeicher int not null, ram int not null, hauptdienst varchar(50) not null
);
Tabelle für die Benutzerverwaltung anlegen.
- create table benutzer (
id int auto_increment primary key,
benutzername varchar(50) not null unique,
passwort varchar(255) not null,
rolle enum('admin', 'user') not null
);
PHP-Skript für Datenbankverbindung
Ein PHP-Skript wird erstellt, um sich mit der Datenbank zu verbinden.
<?php
$servername = "localhost";
$username = "root";
$password = "passwort";
$dbname = "serververwaltung";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Verbindung fehlgeschlagen: " . $conn->connect_error);
}
?>
Formular für das Eintragen neuer Server
Ein einfaches HTML-Formular ermöglicht das Eintragen neuer Server.
<form method="post" action="eintragen.php">
Rechnername: <input type="text" name="rechnername" required><br>
IP-Adresse: <input type="text" name="ip_adresse" required><br>
Betriebssystem: <input type="text" name="betriebssystem" required><br>
Festplattenspeicher (GB): <input type="number" name="festplattenspeicher" required><br>
RAM (GB): <input type="number" name="ram" required><br>
Hauptdienst: <input type="text" name="hauptdienst" required><br>
<input type="submit" value="Speichern">
</form>
PHP-Skript zur Verarbeitung des Formulars
Das Skript speichert die eingegebenen Daten in die Datenbank.
<?php
include 'db.php';
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$rechnername = $_POST["rechnername"];
$ip_adresse = $_POST["ip_adresse"];
$betriebssystem = $_POST["betriebssystem"];
$festplattenspeicher = $_POST["festplattenspeicher"];
$ram = $_POST["ram"];
$hauptdienst = $_POST["hauptdienst"];
$sql = "INSERT INTO server (rechnername, ip_adresse, betriebssystem, festplattenspeicher, ram, hauptdienst)
VALUES ('$rechnername', '$ip_adresse', '$betriebssystem', '$festplattenspeicher', '$ram', '$hauptdienst')";
if ($conn->query($sql) === TRUE) {
echo "Server erfolgreich eingetragen.";
} else {
echo "Fehler: " . $conn->error;
}
}
?>
Anzeige der Serverliste
Eine Liste aller Server wird als HTML-Tabelle ausgegeben.
<?php
include 'db.php';
$result = $conn->query("SELECT * FROM server");
if ($result->num_rows > 0) {
echo "<table border='1'>
<tr><th>ID</th><th>Rechnername</th><th>IP-Adresse</th><th>Betriebssystem</th><th>Festplatte (GB)</th><th>RAM (GB)</th><th>Hauptdienst</th></tr>";
while($row = $result->fetch_assoc()) {
echo "<tr><td>" . $row["id"] . "</td><td>" . $row["rechnername"] . "</td><td>" . $row["ip_adresse"] . "</td><td>" . $row["betriebssystem"] . "</td><td>" . $row["festplattenspeicher"] . "</td><td>" . $row["ram"] . "</td><td>" . $row["hauptdienst"] . "</td></tr>";
}
echo "</table>";
} else {
echo "Keine Server gefunden.";
}
?>
Benutzerverwaltung
Ein Registrierungs- und Login-System wird integriert, um Benutzerrechte zu verwalten. Nur Admins können Einträge bearbeiten oder hinzufügen.
Verschlüsselung mit HTTPS
Die gesamte Seite wird auf HTTPS umgestellt, um die Sicherheit zu erhöhen.
Fazit
Dieses Projekt zeigt, wie eine dynamische Webanwendung für die Serververwaltung entsteht. Durch die einfache Struktur können alle Teilnehmer den Zusammenhang zwischen Datenbank, PHP und HTML verstehen.