Session um einen Wert erweitern

dreambaser

Erfahrenes Mitglied
Array in einer Session

Hallo Leute,

Ich benötige mal wieder nen Denkanstoß.

Ich will eine Seitenmerkfunktion basteln, wobei der User die letzten Seiten
angezeigt bekommt und diese dann per Link aufrufen kann.

Dabei habe ich das Problem, das ich die Session zwar einfach registrieren kann, aber keine weiteren Seiten (Links) hinzufügen kann, sondern die aktuelle Seite einfach ersetzt wird.

Wie müsste ich das machen, das die Session dann erweitert wird ?

Hier mal mein Ansatz dazu:

PHP:
if (isset($_SESSION['titles']))
	{
	session_register(titles);
	$titles=array($titles);
	$titles []= $titles;
	
	}
	else
	{
	session_register(titles);
	$ok = SESSION_SAVED;
	}
	}

$titles wird durch einen Link übergeben welchen ich dann in der Session registrieren will.

Vielen Dank für eure Hilfe

greetz -> da Dream
 
Zuletzt bearbeitet:
Hoi,

Also für alle die es interessiert, habe ich das ganze mir noch einmal zu gemüte geführt und habe eine richtig gute Lösung entwickelt.

Hier mal das Script:

PHP:
	if (isset($_SESSION['categories_object']))
	{
	 $categoriess = $_SESSION['categories_object'];
    array_push($categoriess, $categories);
    $_SESSION['categories_object'] = $categoriess;
	}
	else
	{
	$_SESSION['categories_object'] = array ($categories);
	}

Wie Ihr sehen könnt, sieht das ganze ziemlich schwer aus auf der ersten Blick. Ist es aber absolut nicht.

Man muss sich vorher überlegen, in was man nun speichern will, entweder in Strings oder Arrays. Demnach muss ich natürlich das ganze dann auch von anfang an so deklarieren das es nachher passt, das mache ich dann bereits schon in diesem Bereich:

$_SESSION['categories_object'] = array ($categories);

das heisst nichts anderes wie: Wenn die Session noch nicht vorhanden ist dann registriere die erste Session als Array.

Wenn Sie schon da sein sollte, dann den Array um einen Wert erweitern und registrieren.

$categoriess = $_SESSION['categories_object'];
array_push($categoriess, $categories);


danach wird der Wert umgedreht um wieder lesen zu können:

$_SESSION['categories_object'] = $categoriess;

und das wars schon.

Den Rest könnt Ihr ja oben im Script ausprobieren.

mfg

greet -> da Dream
 
Zurück