PHP Oturumlarına Dizi Yazma

Önceki derste yaptığımız kodu inceleyelim:

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

Aslında formun tüm verilerini doğrudan $_SESSION içine yazabilirdik:

test1.php<?php
  if (!empty($_GET)) {
    $_SESSION = $_GET;
  }
?>

Ve test2.php dosyasında şu şekilde yapabilirdik:

test2.php<?php
  if (!empty($_SESSION)) {
    echo array_sum($_SESSION);
  }
?>

Bu yaklaşımın avantajı, kodumuzun formdaki input sayısından bağımsız olarak çalışmasıdır.

Ancak bir dezavantajı var: $_SESSION'ı yeniden yazarken, daha önce orada bulunan tüm verileri siliyoruz. Başka bir betiğimiz oraya ne yazmış olabilir? Ve biz onu siliyoruz.

Haydi farklı bir yol izleyelim:

test2.php<?php
  if (!empty($_GET)) {
    $_SESSION['nums'] = $_GET;
  }
?>

Gördüğünüz gibi, oturum değişkenine tek bir değer değil, bir dizi yazdık. Şimdi test2.php dosyasında bu dizinin elemanlarının toplamını bulabiliriz:

test2.php<?php
  if (!empty($_SESSION)) {
    echo array_sum($_SESSION['nums']);
  }
?>
Задание 1

Bir sayfada, bir form kullanarak kullanıcıdan adını, yaşını, maaşını ve başka bir şey daha sorun. Bu verileri, bir dizi şeklinde tek bir oturum değişkenine kaydedin. Başka bir sayfaya giriş yapıldığında, kaydedilmiş verileri bir döngü ile gezin ve her dizi elemanını kendi li etiketinde, ul etiketinin içinde görüntüleyin.