Сессии и формы в PHP

Пусть у нас есть два PHP файла. Давайте в файле test1.php разместим форму, спрашивающую у пользователя два числа:

test1.php<form method="GET">
  <input name="num1">
  <input name="num2">
  <input type="submit">
</form>

В этом же файле разместим код обработки формы. В этом коде мы запишем данные инпутов в сессию:

test1.php<?php
  session_start();
  
  if (!empty($_GET)) {
    $_SESSION['num1'] = $_GET['num1'];
    $_SESSION['num2'] = $_GET['num2'];
  }
?>

Важный нюанс: в файле код обработки формы должен стоять до самой формы. Почему: потому что в этом коде мы работаем с сессией, а значит не должно быть никакого вывода на экран до этого.

Давайте теперь в файле test2.php найдем сумму чисел, сохраненных в сессии:

test2.php<?php
  if (!empty($_SESSION)) {
    echo $_SESSION['num1'] + $_SESSION['num2'];
  }
?>

В какой последовательности это все должно работать? Сначала пользователь заходит на страницу test1.php, заполняет форму и жмет на кнопку. После этого он опять попадает на test1.php, но уже с отправленными данными формы. При этом он попадает в условие, в котором мы пишем данные формы в сессию.

Затем пользователь должен вручную зайти на страницу test2.php - и там он увидит сумму введенных чисел.

Вы можете спросить: зачем так мудрить? Ведь можно было сразу отправить форму на страницу test2.php. Дело в том, что в данном случае удобство в том, что сама форма и код ее обработки размещаются на одной странице. Такое, конечно же, удобно не всегда, но иногда бывает нужно.

Задание 1

На одной странице с помощью формы спросите у пользователя фамилию, имя и возраст. Запишите эти данные в сессию. При заходе на другую страницу выведите эти данные на экран.