Initial commit

This commit is contained in:
Christopher Meinhold 2025-01-17 20:02:27 +01:00
commit 561913d667
2 changed files with 81 additions and 0 deletions

71
GetData.php Normal file
View File

@ -0,0 +1,71 @@
<?php
// Die Konfigurationsdatei einbinden
require_once('config.php');
// API-Schlüssel aus dem Header abrufen
$apiKey = isset($_SERVER['HTTP_X_API_KEY']) ? $_SERVER['HTTP_X_API_KEY'] : '';
// Überprüfen, ob der API-Schlüssel korrekt ist
if ($apiKey !== API_KEY) {
// Wenn der API-Schlüssel falsch ist oder fehlt, eine Fehlermeldung senden
header("HTTP/1.1 403 Forbidden");
echo json_encode(array("message" => "Unbefugter Zugriff - Falscher API-Schlüssel"));
exit;
}
// Verbindung zur MySQL-Datenbank herstellen
$conn = new mysqli(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
// Überprüfen, ob die Verbindung erfolgreich war
if ($conn->connect_error) {
die("Verbindung fehlgeschlagen: " . $conn->connect_error);
}
// Bestimmen des Endpunkts basierend auf der Anfrage
$endpoint = isset($_GET['endpoint']) ? $_GET['endpoint'] : '';
// Die Antwort wird standardmäßig als leeres Array gesetzt
$response = array();
switch ($endpoint) {
case 'GetVerfasser':
$sql = "SELECT name AS Verfasser FROM Verfasser order by id";
break;
case 'GetAlarmierungDurch':
$sql = "SELECT name AS AlarmierungDurch FROM AlarmierungDurch order by id";
break;
case 'GetAnforderungDurch':
$sql = "SELECT name AS AnforderungDurch FROM AnforderungDurch order by id";
break;
default:
$response = array("message" => "Ungültiger Endpunkt. Verfügbare Endpunkte: GetSachbearbeiter, GetLeitstellen, GetPolizei.");
echo json_encode($response);
$conn->close();
exit;
}
// SQL-Abfrage ausführen und prüfen, ob es Ergebnisse gibt
$result = $conn->query($sql);
if ($result->num_rows > 0) {
// Ein leeres Array zum Speichern der Ergebnisse
$dataList = array();
// Durch alle Datensätze iterieren und in ein Array einfügen
while($row = $result->fetch_assoc()) {
// Je nach Endpunkt den jeweiligen Namen einfügen
$dataList[] = $row;
}
// Rückgabe der Ergebnisse als JSON
echo json_encode($dataList);
} else {
echo json_encode(array("message" => "Keine Daten gefunden"));
}
// Verbindung schließen
$conn->close();
?>

10
config.php Normal file
View File

@ -0,0 +1,10 @@
<?php
// Datenbank-Verbindungsinformationen (kann auch aus Umgebungsvariablen geladen werden)
define('DB_SERVER', '192.168.178.201'); // Oder IP-Adresse des MySQL-Servers
define('DB_USERNAME', 'rhs_sachsen'); // Dein MySQL-Benutzername
define('DB_PASSWORD', 'AX6Tcj-pB].dSK_('); // Dein MySQL-Passwort
define('DB_NAME', 'rhs_sachsen'); // Deine Datenbank
// Definiere hier deinen geheimen API-Schlüssel
define('API_KEY', 'b1f7ca66-d15e-497c-9b21-81017dfd9662');
?>