Erster Commit
This commit is contained in:
commit
dd7bdc06f4
7
.htaccess
Normal file
7
.htaccess
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
RewriteEngine On
|
||||||
|
RewriteBase /
|
||||||
|
|
||||||
|
# Weiterleitung aller Anfragen an api.php
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-f
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-d
|
||||||
|
RewriteRule ^(.*)$ api.php?endpoint=$1 [QSA,L]
|
||||||
73
alt_functions.php
Normal file
73
alt_functions.php
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
<?php
|
||||||
|
// Verbindet sich zur MySQL-Datenbank
|
||||||
|
function db_connect() {
|
||||||
|
$conn = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
|
||||||
|
if ($conn->connect_error) {
|
||||||
|
die("Verbindung fehlgeschlagen: " . $conn->connect_error);
|
||||||
|
}
|
||||||
|
return $conn;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Holt alle Geräte aus der Datenbank
|
||||||
|
function get_all_devices() {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "SELECT * FROM devices";
|
||||||
|
$result = $conn->query($sql);
|
||||||
|
|
||||||
|
$devices = [];
|
||||||
|
while ($row = $result->fetch_assoc()) {
|
||||||
|
$devices[] = $row;
|
||||||
|
}
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
return $devices;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Holt ein Gerät nach ID aus der Datenbank
|
||||||
|
function get_device_by_id($id) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "SELECT * FROM devices WHERE id = ?";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("i", $id);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$result = $stmt->get_result();
|
||||||
|
$device = $result->fetch_assoc();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
return $device;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fügt ein neues Gerät in die Datenbank ein
|
||||||
|
function add_device($imei, $phone_number, $gps_position, $battery_level) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "INSERT INTO devices (imei, phone_number, gps_position, battery_level) VALUES (?, ?, ?, ?)";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("sssd", $imei, $phone_number, $gps_position, $battery_level);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
return $stmt->insert_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Aktualisiert ein Gerät in der Datenbank
|
||||||
|
function update_device($id, $gps_position, $battery_level) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "UPDATE devices SET gps_position = ?, battery_level = ? WHERE id = ?";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("sdi", $gps_position, $battery_level, $id);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Löscht ein Gerät aus der Datenbank
|
||||||
|
function delete_device($id) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "DELETE FROM devices WHERE id = ?";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("i", $id);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
}
|
||||||
79
api.php
Normal file
79
api.php
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
<?php
|
||||||
|
header("Content-Type: application/json");
|
||||||
|
include('config.php');
|
||||||
|
include('modules/GetRecipes.php');
|
||||||
|
|
||||||
|
// Holen des Endpunkts und der Methode
|
||||||
|
$request_method = $_SERVER['REQUEST_METHOD'];
|
||||||
|
$uri = explode('/', trim($_SERVER['REQUEST_URI'], '/'));
|
||||||
|
$endpoint = isset($uri[0]) ? $uri[0] : null;
|
||||||
|
$id = isset($uri[1]) ? $uri[1] : null;
|
||||||
|
|
||||||
|
// Wenn kein Endpunkt angegeben ist, Fehler zurückgeben
|
||||||
|
if (!$endpoint) {
|
||||||
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
||||||
|
exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
switch ($request_method) {
|
||||||
|
case 'GET':
|
||||||
|
if ($endpoint === 'GetRecipes') {
|
||||||
|
if ($id) {
|
||||||
|
// Einzelnes Gerät abrufen
|
||||||
|
$recipe = get_recipes_by_id($id);
|
||||||
|
if ($recipe) {
|
||||||
|
echo json_encode($recipe);
|
||||||
|
} else {
|
||||||
|
echo json_encode(["error" => "Rezept nicht gefunden"]);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// Alle Geräte abrufen
|
||||||
|
$recipes = get_all_recipes();
|
||||||
|
echo json_encode($recipes);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
/* case 'POST':
|
||||||
|
if ($endpoint === 'AddDevice' && $_SERVER['CONTENT_TYPE'] === 'application/json') {
|
||||||
|
$input = json_decode(file_get_contents('php://input'), true);
|
||||||
|
if (isset($input['imei'], $input['phone_number'], $input['gps_position'], $input['battery_level'])) {
|
||||||
|
$id = add_device($input['imei'], $input['phone_number'], $input['gps_position'], $input['battery_level']);
|
||||||
|
echo json_encode(["message" => "Gerät hinzugefügt", "id" => $id]);
|
||||||
|
} else {
|
||||||
|
echo json_encode(["error" => "Ungültige Eingabedaten"]);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'PUT':
|
||||||
|
if ($endpoint === 'UpdateDevice' && $id && $_SERVER['CONTENT_TYPE'] === 'application/json') {
|
||||||
|
$input = json_decode(file_get_contents('php://input'), true);
|
||||||
|
if (isset($input['gps_position'], $input['battery_level'])) {
|
||||||
|
update_device($id, $input['gps_position'], $input['battery_level']);
|
||||||
|
echo json_encode(["message" => "Gerät aktualisiert"]);
|
||||||
|
} else {
|
||||||
|
echo json_encode(["error" => "Ungültige Eingabedaten"]);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
|
||||||
|
case 'DELETE':
|
||||||
|
if ($endpoint === 'DeleteDevice' && $id) {
|
||||||
|
delete_device($id);
|
||||||
|
echo json_encode(["message" => "Gerät gelöscht"]);
|
||||||
|
} else {
|
||||||
|
echo json_encode(["error" => "Ungültiger Endpunkt"]);
|
||||||
|
}
|
||||||
|
break; */
|
||||||
|
|
||||||
|
default:
|
||||||
|
echo json_encode(["error" => "Ungültige HTTP-Methode"]);
|
||||||
|
break;
|
||||||
|
}
|
||||||
6
config.php
Normal file
6
config.php
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?php
|
||||||
|
define('DB_HOST', '155.133.215.203');
|
||||||
|
define('DB_USER', 'airfryer'); // Dein MySQL-Benutzer
|
||||||
|
define('DB_PASS', 'd^D@6ENq9WExqBFuW8'); // Dein MySQL-Passwort
|
||||||
|
define('DB_NAME', 'airfryer'); // Name der Datenbank
|
||||||
|
|
||||||
73
modules/GetRecipes.php
Normal file
73
modules/GetRecipes.php
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
<?php
|
||||||
|
// Verbindet sich zur MySQL-Datenbank
|
||||||
|
function db_connect() {
|
||||||
|
$conn = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
|
||||||
|
if ($conn->connect_error) {
|
||||||
|
die("Verbindung fehlgeschlagen: " . $conn->connect_error);
|
||||||
|
}
|
||||||
|
return $conn;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Holt alle Geräte aus der Datenbank
|
||||||
|
function get_all_devices() {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "SELECT * FROM devices";
|
||||||
|
$result = $conn->query($sql);
|
||||||
|
|
||||||
|
$devices = [];
|
||||||
|
while ($row = $result->fetch_assoc()) {
|
||||||
|
$devices[] = $row;
|
||||||
|
}
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
return $devices;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Holt ein Gerät nach ID aus der Datenbank
|
||||||
|
function get_device_by_id($id) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "SELECT * FROM devices WHERE id = ?";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("i", $id);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$result = $stmt->get_result();
|
||||||
|
$device = $result->fetch_assoc();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
return $device;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fügt ein neues Gerät in die Datenbank ein
|
||||||
|
function add_device($imei, $phone_number, $gps_position, $battery_level) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "INSERT INTO devices (imei, phone_number, gps_position, battery_level) VALUES (?, ?, ?, ?)";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("sssd", $imei, $phone_number, $gps_position, $battery_level);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
return $stmt->insert_id;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Aktualisiert ein Gerät in der Datenbank
|
||||||
|
function update_device($id, $gps_position, $battery_level) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "UPDATE devices SET gps_position = ?, battery_level = ? WHERE id = ?";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("sdi", $gps_position, $battery_level, $id);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Löscht ein Gerät aus der Datenbank
|
||||||
|
function delete_device($id) {
|
||||||
|
$conn = db_connect();
|
||||||
|
$sql = "DELETE FROM devices WHERE id = ?";
|
||||||
|
$stmt = $conn->prepare($sql);
|
||||||
|
$stmt->bind_param("i", $id);
|
||||||
|
$stmt->execute();
|
||||||
|
|
||||||
|
$conn->close();
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue
Block a user