Array nur einmal erstellen

NBA

Grünschnabel
Hallo,

ich habe einen Onlineshop (oscommerce) und möchte folgendes erreichen:

Ein Array soll innerhalb einer Session genau einmal gefüllt werden. Danach soll verhindert werden, dass dieses Array nochmal gefüllt wird (geschieht immer bei der Startseite, deshlab kann array öfters gefüllt werden).

D.h. das Array sollte man in die Session schreiben. Aber ich habe alles probiert und bekomme esnicht hin. Wie kann ich ein Array in eine Session schreiben und danach wieder darauf zugreifen. Die Suche hat bisher nicht geholfen.

Viele Grüße und vielen Dank
 
PHP:
session_start();
$_SESSION['array'] = Array(1,2,3,4,5);
Auf $_SESSION['array'] kannst Du dann auf den folgenden Seiten wieder zugreifen, vorausgesetzt, Du rufst die Session über [phpf]session_start[/phpf] wieder auf. Um zu überprüfen, ob das Array bereits existiert, kannst Du die Funktion [phpf]is_array[/phpf] verwenden.

snuu
 
Zuletzt bearbeitet:
Korrigiere mich snuu aber bei mir funktionieren Sessions nur richtig beim auslesen, wenn ich die Funktion session_encode() mit einfüge. Keine Ahnung was mein XAMP dagegen hat.

In diesem Sinne
 
Korrigieren kann ich Dich nicht, ich habe session_encode() noch nie benötigt und verwendet. Folgender Code gibt bei mir beim ersten Aufruf nur den Link aus. Beim zweiten Aufruf zusätzlich das Array aus der Session.
PHP:
<?php
  session_start();
  if (!is_array($_SESSION['array'])) {
    $_SESSION['array'] = Array(1,2,3,4,5);
  } else {
    print_r($_SESSION['array']);
  }
  
  echo '<a href="'.$_SERVER['PHP_SELF'].'">Link</a>';
?>
Was macht der Code bei Dir?

mfg, snuu
 
Hi,

habe es hinbekommen. Danke für Eure Tipps.

Habe die Form

Code:
$_SESSION['array'] = Array(1,2,3,4,5);

benutzt und brauchte kein session_encode()

Viele Grüße
NBA
 
Zurück