Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Sesje & Tablice, mam ciekawy problem :)
kysiu.pl
post
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 24.10.2004

Ostrzeżenie: (0%)
-----


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ś (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
crash
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 196
Pomógł: 2
Dołączył: 17.01.2004
Skąd: Sosnowiec

Ostrzeżenie: (0%)
-----


  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...
Go to the top of the page
+Quote Post

Posty w temacie
- kysiu.pl   Sesje & Tablice   31.03.2005, 17:48:59
- - crash   [PHP] pobierz, plaintext <?phpsession_start...   31.03.2005, 18:08:29


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 2.10.2025 - 09:34