Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Sesje & Tablice
Forum PHP.pl > Forum > PHP
kysiu.pl
Otóż.

Robie z $_SESSION['db'] tablice w której zapisuje historie odwiedzonych stron (PHP_SELF )

  1. <?php
  2.  
  3. //Startujemy z sesja
  4.  
  5. //Funkcja dodająca kolejne strony do historii
  6.  
  7. function ($adres) {
  8. $_SESSION['db'][] = $adres;
  9. }
  10.  
  11. ?>


W wyniku tworzy się nam tablica:
Kod
$_SESSION['db'][1] = www1;
$_SESSION['db'][2] = www2;
$_SESSION['db'][3] = www3;
...


I tak tworzy się historia w nieskończoność lub do zakończenia czasu trwania sesji.


Problem polega na tym, że chciałbym ograniczyć funkcje do zapisywania max 10 ostatnich odwiedzonych stron. I żeby ostatnia strona miała indeks 1 przed ostatnia indeks 2 itd..

Np.
teraz zapisuje sie tak:

$_SESSION['db'][99] = "ostanio odwiedzona strona";

a chce zeby ostatnio odwiedzona strona miala indeks [1]
i tych indeksów było max 10.


Pomoże ktoś questionmark.gif
crash
  1. <?php
  2.  
  3. function historia($dana, $nazwa = 'db', $ile = 10)
  4. {
  5. $db = !empty($_SESSION[$nazwa]) ? $_SESSION[$nazwa] : array();
  6.  
  7. $db  = array_reverse($db);
  8. $db[] = $dana;
  9. $db  = array_slice($db, 0 - $ile);
  10. $db  = array_reverse($db);
  11.  
  12. $_SESSION[$nazwa] = $db;
  13. return $db;
  14. }
  15.  
  16. print_r(historia($adres));
  17. ?>

Aktualizuje i wyświetla aktualna zawartość hisotrii...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.