Hallo alle zusammen,
ich hoffe Ihr könnt mir helfen (bin absoluter Anfänger). Mein Problem:
Auf meiner ersten Seite starte ich eine Session und auf dieser habe ich auch ein Formular, das ich per Post-Methode abschicke an Seite 2. Diese übernimmt die Daten aus dem Formular von Seite 1. Das funktioniert soweit. Nun möchte ich über einen Link wieder auf die erste Seite springen und dabei aber die Daten wieder im Formular anzeigen, d. h. ich möchte sie auf Seite eins speichern. So als ob sie eingetragen geblieben wären.
Ich möchte die Post-Methode verwenden. (Keine Cookies, wenn möglich, nicht get!)
Habe die Session ganz am Anfang gestartet und verwende $_SESSION anstatt von session_register().
Meine Fragen:
1.Muss ich auch auf Seite 2 oben auch session_start() einfügen? (Fehlermeldung - Warning: session_start(): The session id contains invalid characters, valid characters are only a-z, A-Z and 0-9 in ...
Warning: session_start(): Cannot send session cache limiter - headers already sent ...)
2.Wie muss ich den Link auf Seite 2 erstellen? (Wie sieht der aus?)
3.Wie gebe ich im Formular auf Seite 1 den value mit php aus den gespeicherten SESSION Variablen an?
4.Muss ich die Session ID an Seite 2 weitergeben, und wenn ja wie?
5.Wenn ich zurückspringe, wie kann ich verhindern, dass eine neue Session gestartet wird?
Ich habe schon überall gesucht, doch noch keine brauchbare Hilfe gefunden, weder in Foren noch bei Google. Ich wäre Euch sehr zu Dank verpflichtet, wenn ihr meine Fragen beantworten könntet.
Vielen Dank schon mal!
Session Start Seite 1
<?php
session_start();
$_SESSION['vorname']= $vorname;
$_SESSION['nachname']=$name;
$_SESSION['geschlecht']=$geschlecht;
?>
mein Formular:
<form name="converter" method="post" action="/xxx/seite1.php">
<input name="sent" type="hidden" value="1">
<input type="hidden" name="PHPSESSID" value="<?php $PHPSESSID=session_id(); ?>"> // ???
Bitte geben Sie Ihren Vornamen ein:
<input name="vorname" type="text" size="30" id="vorname" value="<?php if(isset($_SESSION['vorname'])) { print $_SESSION['vorname'];} ?>">
// ?????
Bitte geben Sie Ihren Nachnamen ein:
<input name="nachname" type="text" size="30" id="nachname" value="<?php echo $nachname;?>">
Bitte Geschlecht eingeben:
<input type="radio" name="geschlecht" value="maennlich"> männlich
<input type="radio" name="geschlecht" value="weiblich"> weiblich
</p>
</p>
<input type="submit" name="Submit" value="Abschicken">
<input type="reset" value="Zurücksetzen">
</p>
</form>
Seite 2:
Link
Zurück zur Startseite
//????
ich hoffe Ihr könnt mir helfen (bin absoluter Anfänger). Mein Problem:
Auf meiner ersten Seite starte ich eine Session und auf dieser habe ich auch ein Formular, das ich per Post-Methode abschicke an Seite 2. Diese übernimmt die Daten aus dem Formular von Seite 1. Das funktioniert soweit. Nun möchte ich über einen Link wieder auf die erste Seite springen und dabei aber die Daten wieder im Formular anzeigen, d. h. ich möchte sie auf Seite eins speichern. So als ob sie eingetragen geblieben wären.
Ich möchte die Post-Methode verwenden. (Keine Cookies, wenn möglich, nicht get!)
Habe die Session ganz am Anfang gestartet und verwende $_SESSION anstatt von session_register().
Meine Fragen:
1.Muss ich auch auf Seite 2 oben auch session_start() einfügen? (Fehlermeldung - Warning: session_start(): The session id contains invalid characters, valid characters are only a-z, A-Z and 0-9 in ...
Warning: session_start(): Cannot send session cache limiter - headers already sent ...)
2.Wie muss ich den Link auf Seite 2 erstellen? (Wie sieht der aus?)
3.Wie gebe ich im Formular auf Seite 1 den value mit php aus den gespeicherten SESSION Variablen an?
4.Muss ich die Session ID an Seite 2 weitergeben, und wenn ja wie?
5.Wenn ich zurückspringe, wie kann ich verhindern, dass eine neue Session gestartet wird?
Ich habe schon überall gesucht, doch noch keine brauchbare Hilfe gefunden, weder in Foren noch bei Google. Ich wäre Euch sehr zu Dank verpflichtet, wenn ihr meine Fragen beantworten könntet.
Vielen Dank schon mal!
Session Start Seite 1
<?php
session_start();
$_SESSION['vorname']= $vorname;
$_SESSION['nachname']=$name;
$_SESSION['geschlecht']=$geschlecht;
?>
mein Formular:
<form name="converter" method="post" action="/xxx/seite1.php">
<input name="sent" type="hidden" value="1">
<input type="hidden" name="PHPSESSID" value="<?php $PHPSESSID=session_id(); ?>"> // ???
Bitte geben Sie Ihren Vornamen ein:
<input name="vorname" type="text" size="30" id="vorname" value="<?php if(isset($_SESSION['vorname'])) { print $_SESSION['vorname'];} ?>">
// ?????
Bitte geben Sie Ihren Nachnamen ein:
<input name="nachname" type="text" size="30" id="nachname" value="<?php echo $nachname;?>">
Bitte Geschlecht eingeben:
<input type="radio" name="geschlecht" value="maennlich"> männlich
<input type="radio" name="geschlecht" value="weiblich"> weiblich
</p>
</p>
<input type="submit" name="Submit" value="Abschicken">
<input type="reset" value="Zurücksetzen">
</p>
</form>
Seite 2:
Link
Zurück zur Startseite
//????
Kommentar