ToDo List на PHP + JSon

Мне удалось реализовать добавление задач и подзадач (название + время), но при создании новой задачи подзадачи также присваиваются ей. Я записываю название основной задачи, название подзадачи и время в разные файлы JSON, то есть каждый из них имеет свой файл. Подскажите, пожалуйста, что я делаю не так.

$name = htmlspecialchars($_POST['todo']);
$name = trim($name);
$json = [];
$name2 = htmlspecialchars($_POST['todo_pod']);
$name2 = trim($name2);
$json2 = [];
$time = htmlspecialchars($_POST['todo_num']);
$time = trim($time);
$time_array = [];

if (file_exists('data.json')) {
  $data_json = file_get_contents('data.json');
  $json = json_decode($data_json, true);
}
if (file_exists('data_pod.json')) {
  $data_pod_json = file_get_contents('data_pod.json');
  $json2 = json_decode($data_pod_json, true);
}
if (file_exists('time.json')) {
  $time_json = file_get_contents('time.json');
  $time_array = json_decode($time_json, true);
}

if ($name) {
  $json[] = $name;
  file_put_contents('data.json', json_encode($json, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}
if ($name2) {
  $json2[] = $name2;
  file_put_contents('data_pod.json', json_encode($json2, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}
if ($time) {
  $time_array[] = $time;
  file_put_contents('time.json', json_encode($time_array, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}

$key = @$_POST['todo_name'];
if (isset($_POST['del'])) {
  unset($json[$key]);
  file_put_contents('data.json', json_encode($json, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}

$key2 = @$_POST['todo_pod_name'];
if (isset($_POST['pod_del'])) {
  unset($json2[$key2]);
  file_put_contents('data_pod.json', json_encode($json2, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_ REFERER']);
}

$key3 = @$_POST['todo_num'];
if (isset($_POST['num_del'])) {
  unset($time_array[$key3]);
  file_put_contents('time.json', json_encode($time_array, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}

if (isset($_POST['save'])) {
  $json[$key] = @$_POST['title'];
  file_put_contents('data.json', json_encode($json, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}
if (isset($_POST['pod_save'])) {
  $json2[$key2] = @$_POST['title_pod'];
  file_put_contents('data_pod.json', json_encode($json2, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}
if (isset($_POST['num_save'])) {
  $time_array[$key3] = @$_POST['title_num'];
  file_put_contents('time.json', json_encode($time_array, JSON_FORCE_OBJECT | JSON_NUMERIC_CHECK));
  header('Location: '. $_SERVER['HTTP_REFERER']);
}

Ответы (0 шт):