PHP-də sessiyalar və formalar

Tutaq ki, bizim iki PHP faylımız var. Gəlin faylı test1.php içində istifadəçidən iki ədəd soruşan form yerləşdirək:

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

Bu faylda formanın emalı üçün kodu yerləşdirək. Bu kodda biz inputların məlumatlarını sessiyaya yazacayıq:

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

Vacib nüans: faylda formanın emalı kodu formanın özündən əvvəl olmalıdır. Niyə: çünki bu kodda biz sessiya ilə işləyirik və bu səbəbdən ekrana heç bir çıxış olmamalıdır bundan əvvəl.

Gəlin indi test2.php faylında sessiyada saxlanılan ədədlərin cəmini tapaq:

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

Bunun hamısı hansı ardıcıllıqla işləməlidir? Əvvəlcə istifadəçi səhifəyə test1.php daxil olur, formanı doldurur və düyməni basır. Bundan sonra o yenə də gəlir test1.php səhifəsinə, ancaq artıq göndərilmiş forma məlumatları ilə. Bu zaman o şərtə daxil olur, hansında ki, biz forma məlumatlarını sessiyaya yazırıq.

Sonra istifadəçi əl ilə daxil olmalıdır test2.php səhifəsinə - və orada o görəcək daxil edilmiş ədədlərin cəmini.

Siz soruşa bilərsiniz: nə üçün belə mürəkkəbləşdirək? Axı dərhal formanı səhifəyə göndərmək olardı test2.php. Məsələ ondadır ki, bu halda rahatlıq ondadır ki, forma özü və onun emalı kodu eyni səhifədə yerləşir. Əlbəttə ki, bu həmişə rahat deyil, ancaq bəzən lazım ola bilər.

Задание 1

Bir səhifədə forma vasitəsilə istifadəçidən soyadı, adı və yaşı soruşun. Bu məlumatları sessiyaya yazın. Digər səhifəyə daxil olduqda bu məlumatları ekranda çap edin.