Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
File Manager
/
TP02
/
burndown
:
functions.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php // Charger les tâches depuis le fichier JSON function loadTasks() { $filename = 'tasks.json'; if (file_exists($filename)) { return json_decode(file_get_contents($filename), true); } return []; } // Sauvegarder les tâches dans le fichier JSON function saveTasks($tasks) { $filename = 'tasks.json'; // Vérifie si le fichier existe, sinon crée-le avec les bonnes permissions /*if (!file_exists($filename)) { // Créer un fichier vide si le fichier n'existe pas file_put_contents($filename, json_encode([], JSON_PRETTY_PRINT)); // Crée un tableau vide } file_put_contents($filename, json_encode($tasks, JSON_PRETTY_PRINT));*/ // Vérifie si le fichier existe, sinon crée-le /*if (!file_exists($filename)) { // Créer un fichier vide avec des permissions appropriées $file = fopen($filename, 'w'); if ($file === false) { die('Erreur lors de la création du fichier.'); } // Écrire un tableau vide au format JSON dans le fichier fwrite($file, json_encode([], JSON_PRETTY_PRINT)); fclose($file); }*/ $myfile = fopen("zzzzzzz.txt", "w") or die("Unable to open file!"); $txt = "John Doe\n"; fwrite($myfile, $txt); $txt = "Jane Doe\n"; fwrite($myfile, $txt); fclose($myfile); // Sauvegarder les données des tâches dans le fichier /*$file = fopen($filename, 'w'); if ($file === false) { die('Erreur lors de l\'ouverture du fichier pour l\'écriture.'); } // Convertir les tâches en JSON avec une belle mise en forme $json_data = json_encode($tasks); //, JSON_PRETTY_PRINT); // Écrire les données dans le fichier fwrite($file, $json_data); fclose($file);*/ } // Gérer l'ajout, l'édition, la suppression et la sauvegarde des tâches if ($_SERVER['REQUEST_METHOD'] == 'POST') { $action = $_POST['action'] ?? ''; if ($action == 'add') { // Ajouter une tâche $tasks = loadTasks(); $newTask = [ 'taskName' => $_POST['taskName'], 'estimatedTime' => $_POST['estimatedTime'] ]; $tasks[] = $newTask; saveTasks($tasks); echo json_encode(['index' => count($tasks) - 1]); } elseif ($action == 'edit') { // Modifier une tâche $tasks = loadTasks(); $tasks[$_POST['index']] = [ 'taskName' => $_POST['taskName'], 'estimatedTime' => $_POST['estimatedTime'] ]; saveTasks($tasks); } elseif ($action == 'delete') { // Supprimer une tâche $tasks = loadTasks(); array_splice($tasks, $_POST['index'], 1); saveTasks($tasks); } /*elseif ($action == 'save') { // Sauvegarder toutes les tâches $tasks = json_decode($_POST['tasks'], true); echo " ******* " .$tasks: saveTasks($tasks); echo 'Success'; } */ elseif (isset($_POST['action']) && $_POST['action'] === 'save') { // Récupérer les données JSON envoyées if (isset($_POST['tasks'])) { // Décoder le JSON $tasks = json_decode($_POST['tasks'], true); // Vérifier que la décodification a réussi et que $tasks est un tableau if ($tasks !== null && is_array($tasks)) { // Chemin du fichier où sauvegarder les tâches $filePath = 'tasks.json'; // Convertir le tableau PHP en JSON $jsonData = json_encode($tasks, JSON_PRETTY_PRINT); // Sauvegarder le fichier JSON if (file_put_contents($filePath, $jsonData)) { echo 'Les tâches ont été sauvegardées avec succès.'; } else { echo 'Erreur lors de la sauvegarde des tâches.'; } } else { echo 'Données invalides. Impossible de décoder le JSON.'; } } else { echo 'Aucune donnée de tâche reçue.'; } } elseif ($action == 'load') { // Charger les tâches depuis le fichier JSON et les envoyer au client $tasks = loadTasks(); echo json_encode($tasks); } } ?>