$_SESSION array wird nicht weiter gegeben


Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
#1
Hallo.
Ich habe mal eine Frage:

Meine Scripte haben am Anfang
PHP:
<?php
session_start();
stehen.
Es geht um einen Warenkorb.
Wenn ich nun von meiner Artikelseite zur Bearbeitungsseite weiterleite (session.php):
PHP:
<?php
session_start();

$party = $_GET['artikel'];


$my_array = array();

$my_array[] = $party;
$_SESSION['artikel'] = $my_array;

var_dump($_SESSION['artikel']);

?>
funktioniert Alles auf dieser (session.php) Seite. (Es wird ein gefülltes Array angezeigt.)

Wenn Ich mir allerdings die §_SESSION variable auf der Artikelseite per var_dump() ausgeben lassen will, kommt:

array(0) { }

Ich verstehe es nicht!

Kann jemand helfen?

Außerdem habe ich gerade festgestellt, dass keine 'neuen' Werte in das Array geschrieben werden... :cautious:
 
Zuletzt bearbeitet:
#3
Ja, aber wenn ich wieder auf der Artikelseite bin und eine 'neues' Produkt in das Array packe und mir die session variable, die mein array ist, auf der Bearbeitungsseite per var_dump ausgebe, steht da auch 'nur`der neue Artikel drin... (?)
 

EuroCent

Erfahrenes Mitglied
#4
Könnte an der Zuordnung des Arrays liegen.

Wenn ich mir deinen Fall oben anschauen, lässt Du $my_array beim jedem Aufruf leeren.
Hier sollte es eventuell ausgelagert werden.

Prüf kannst du es um es sauber und besser lesbar zu haben wie folgt:
PHP:
<?php
prinf('<pre>%s</pre>', print_r($my_array, true));
prinf('<pre>%s</pre>', print_r($_SESSION, true));
?>
 
#7
Ich habe die Lösung:
PHP:
<?php
session_start();

$_SESSION['artikel'][] = $_GET['artikel'];
$_SESSION['name'][] = $_GET['name'];
$_SESSION['preis'][] = $_GET['preis'];

header("location:javascript://history.back()");

?>
Eigentlich ganz einfach... :rolleyes:

Wenn ich mir deinen Fall oben anschauen, lässt Du $my_array beim jedem Aufruf leeren.
Das hat mich auf die Lösung gebracht. DANKE
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

Neue Beiträge