File "functions.php"
Full Path: /home/analogde/www/CURL/Dev tableau/burndown/functions.php
File size: 4.19 KB
MIME-type: text/x-php
Charset: utf-8
<?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);
}
}
?>