From eea2bff79d6ed5d3da725ccf7522af978f78026a Mon Sep 17 00:00:00 2001 From: Freitas_Enzo Date: Mon, 1 Jun 2026 11:56:28 +0000 Subject: [PATCH] =?UTF-8?q?T=C3=A9l=C3=A9verser=20les=20fichiers=20vers=20?= =?UTF-8?q?"routes"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- routes/climate.php | 61 +++++++++++++++++++++++++++++++++++++++++++++ routes/security.php | 59 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 120 insertions(+) create mode 100644 routes/climate.php create mode 100644 routes/security.php diff --git a/routes/climate.php b/routes/climate.php new file mode 100644 index 0000000..aaa2f10 --- /dev/null +++ b/routes/climate.php @@ -0,0 +1,61 @@ + 'Token manquant']); + exit(); + } + $token = str_replace('Bearer ', '', $headers['Authorization']); + try { + return JWT::decode($token, new Key(JWT_SECRET, 'HS256')); + } catch (Exception $e) { + http_response_code(401); + echo json_encode(['message' => 'Token invalide']); + exit(); + } +} + +verify_token(); + +$method = $_SERVER['REQUEST_METHOD']; +$db = get_db(); + +// GET — Récupérer toutes les données climatiques +if ($method === 'GET') { + $result = $db->query("SELECT * FROM climate_data ORDER BY timestamp DESC LIMIT 50"); + $data = []; + while ($row = $result->fetch_assoc()) { + $data[] = $row; + } + echo json_encode($data); + +// POST — Ajouter une donnée climatique +} elseif ($method === 'POST') { + $body = json_decode(file_get_contents('php://input'), true); + $stmt = $db->prepare("INSERT INTO climate_data (temperature, humidity, pressure, luminosity) VALUES (?, ?, ?, ?)"); + $stmt->bind_param("dddd", + $body['temperature'], + $body['humidity'], + $body['pressure'], + $body['luminosity'] + ); + $stmt->execute(); + http_response_code(201); + echo json_encode(['message' => 'Donnée ajoutée avec succès']); +} + +$db->close(); +?> \ No newline at end of file diff --git a/routes/security.php b/routes/security.php new file mode 100644 index 0000000..a5145bf --- /dev/null +++ b/routes/security.php @@ -0,0 +1,59 @@ + 'Token manquant']); + exit(); + } + $token = str_replace('Bearer ', '', $headers['Authorization']); + try { + return JWT::decode($token, new Key(JWT_SECRET, 'HS256')); + } catch (Exception $e) { + http_response_code(401); + echo json_encode(['message' => 'Token invalide']); + exit(); + } +} + +verify_token(); + +$method = $_SERVER['REQUEST_METHOD']; +$db = get_db(); + +// GET — Récupérer tous les événements de sécurité +if ($method === 'GET') { + $result = $db->query("SELECT * FROM security_events ORDER BY timestamp DESC LIMIT 50"); + $data = []; + while ($row = $result->fetch_assoc()) { + $data[] = $row; + } + echo json_encode($data); + +// POST — Ajouter un événement de sécurité +} elseif ($method === 'POST') { + $body = json_decode(file_get_contents('php://input'), true); + $stmt = $db->prepare("INSERT INTO security_events (event_type, location) VALUES (?, ?)"); + $stmt->bind_param("ss", + $body['event_type'], + $body['location'] + ); + $stmt->execute(); + http_response_code(201); + echo json_encode(['message' => 'Événement ajouté avec succès']); +} + +$db->close(); +?> \ No newline at end of file