Session Problem! Textfeld leer nach betätigen vom zurück Button!

Lapachon

Mitglied
Hi!

Ich habe ein dringendes Problem. Ich muss morgen damit fertig werden, aber ich komme einfach zu keiner Lösung, es ist zum Verzweifeln.

Ich habe einen Fragebogen. In diesem Fragebogen kann man vor und zurück klicken. Wenn der Benutzer aber jetzt auf der 3 Seite angelangt ist, werden die Daten nicht mehr angezeigt im Textfeld.

Der Code von dem Textfeld sieht so aus:

PHP:
<input type="text" name="b1_firmenname" class="inputformat" value="<?=$_SESSION['b1_firmenname'];?>">

Wenn ich gleich von der 2 Seite zurück auf die 1 Seite springe, sind die Daten jedoch noch vorhanden. Der Code auf der block2.php sieht so aus, damit ich die Variable in die Session einlese:

PHP:
$_SESSION['b1_firmenname']=$_POST['b1_firmenname'];

Somit sollte doch die Variable in der Session gespeichert sein? Ich hoffe Ihr könnt mir helfen, bin schon Verzweifelt, da ich bis morgen meine Deadline habe.

LG

Lapachon
 
PHP:
<input type="text" name="b1_firmenname" class="inputformat" value="<?php echo $_SESSION['b1_firmenname'];?>">

Vielleicht gehts ja so?
 
Hi,

bin mir nicht sicher aber

<?=$_SESSION['b1_firmenname'];?>">

was soll das Gleichheitszeichen vor $_SESSION ?

Gruß
 
Nein leider. Sobald ich vom block3.php zurück auf block2.php und dann auf block1.php wechsle sind die Daten weg.

Ich lasse mir die Sessions auf jeder Seite ausgeben. Es wird auch überall angezeigt, nur sobald ich bei Block3 auf zurück klicke sodass ich auf Block2 bin, ist das echo leer. Muss ich vielleicht den zurück Button irgendeinen Wert geben?

Er sieht so aus:

PHP:
<a href="block_eins.php"><img src="images/buttons/zurueck.jpg" border="0"></a>
 
Vielleicht cached dein Browser beim Zurueckgehen einfach die alte Seite und uebernmmt nicht die neu generierte. Probiers mal so:

PHP:
<a href="block_eins.php?r<?php echo rand(0,100); ?>"><img src="images/buttons/zurueck.jpg" border="0"></a>

Beachte aber bitte trotzdem was ich oben geschrieben habe
 
Original geschrieben von Lapachon
Nein leider. Sobald ich vom block3.php zurück auf block2.php und dann auf block1.php wechsle sind die Daten weg.

Ich lasse mir die Sessions auf jeder Seite ausgeben. Es wird auch überall angezeigt, nur sobald ich bei Block3 auf zurück klicke sodass ich auf Block2 bin, ist das echo leer. Muss ich vielleicht den zurück Button irgendeinen Wert geben?

Er sieht so aus:

PHP:
<a href="block_eins.php"><img src="images/buttons/zurueck.jpg" border="0"></a>

ok mal ganz ungeachtet des Formulars, wenn du von Seite 2 auf Seite eins gehst bekommst du den Inhalt der Session angezeigt. Wenn du von Seite 3 irgendwie auf Seite 1 gehst nicht mehr, richtig?

Ah ich habs - du schreibst auf Seite 2 die Session Variable aus dem POST raus. Hast du davor ne if schleife stehen, die überprüft ob die Session vielleicht schon gesetzt ist bzw. ob du überhaupt aus dem 1. Formular kommst? Wenn nein überschreibt er dir nämlich die Session Varialble mit nem leeren Wert aus $_POST!

Gruß
 
Original geschrieben von Lapachon
PHP:
$_SESSION['b1_firmenname']=$_POST['b1_firmenname'];


Somit sollte doch die Variable in der Session gespeichert sein? Ich hoffe Ihr könnt mir helfen, bin schon Verzweifelt, da ich bis morgen meine Deadline habe.

LG

Lapachon

jep hier stehs ja,

da musst du davor (je nach dem wie es dir lieber ist) entweder testen ob du aus dem ersten form kommst oder ob die Session schon vorhanden ist:

PHP:
if(!isset($_SESSION['b1_firmenname'])) {
    $_SESSION['b1_firmenname']=$_POST['b1_firmenname'];	
}

oder

PHP:
if(isset($_POST['submit_aus_form1'])) {
    $_SESSION['b1_firmenname']=$_POST['b1_firmenname'];	
}

Gruß
 
@all

Danke für eure Hilfe, ohne euch wäre ich aufgeschmiessen gewesen.

@südpol

Danke, ich habs so probiert wie du mir gesagt hast und es funkt!

Herzlichen Dank

Lapachon
 
Zurück