Mehrseitige Formulare – Inhalte weitertragen und Auswirkungen auf der nächste Seite

Die Variable musst du dort setzen, wohin das Formular gesendet wird, also in 02.php

PHP:
<?php
session_start();

//Variable setzen
if(isset($_POST['radio01']))
  {
    $_SESSION['radio01']= $_POST['radio01'];
  }

//Variablenwert ausgeben
if(isset($_SESSION['radio01']))
  {
    echo $_SESSION['radio01'];
  }

  
?>

...wie schon erwähnt, vergesse, dass du da mit Sessions arbeitest, du gehst da ganz normal vor wie du es auch sonst mit Variablen machst, nur dass diese nun die Skript-Laufzeit überleben.
 
Hallo,
ok...

Habe jetzt folgende Codes eingebaut:
In der 01.php steht:

PHP:
<html><body>...

<?php 
require_once("../sessions.php"); 
?><form method="post" action="../02/02.php">...</form>

</body></html>

In der 02.php steht jetzt:

PHP:
<html><body><?php 
session_start(); 

//Variable setzen 
if(isset($_POST['radio01'])) 
  { 
    $_SESSION['radio01']= $_POST['radio01']; 
  } 

//Variablenwert ausgeben
if(isset($_SESSION['radio01'])) 
  { 
    echo $_SESSION['radio01']; 
  } 

   
?> <form method="post" action="../03/03.php"> ... </form> ... </body></html>

Wie kann ich jetzt noch erreichen, dass auf 02.php eben eine von drei Antworten angezeigt wird (je nachdem, welche Antwort gewählt wurde - und: wo gebe ich die Antworten ein)

Ich nehme an, ich übernehme den gleichen Code, den Sven Mintel gerade gepostet hat, nur eben immer fortlaufend (z.B: "radio02" statt "radio01") in allen weiteren Seiten, nach dem selben Prinzip, oder?
 
Zuletzt bearbeitet:
Achtung:
Jetzt erscheint folgende Fehlermeldung,
nur wenn ich 01.php aufrufe:

PHP:
Parse error: parse error, unexpected T_STRING, expecting T_VARIABLE or '$' in /kunden/110589_88131/webseiten/kunden/clever-cash/schritt2/befragung/sessions.php on line 3

Was hat das zu bedeuten?
Hier nochmal die sessions.php:

PHP:
<?php 

    if( empty(session_id()) ) { 
        session_start(); 
    } 

?>
 
Jetzt wird angezeigt:
PHP:
Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /kunden/110589_88131/webseiten/kunden/clever-cash/schritt2/befragung/01/01.php:14) in /kunden/110589_88131/webseiten/kunden/clever-cash/schritt2/befragung/sessions.php on line 4

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /kunden/110589_88131/webseiten/kunden/clever-cash/schritt2/befragung/01/01.php:14) in /kunden/110589_88131/webseiten/kunden/clever-cash/schritt2/befragung/sessions.php on line 4

Ich habe jetzt mal die Seiten als Ordner angehängt!
 

Anhänge

Schön dass du die Beiträge aufmerksam liest:
http://www.tutorials.de/forum/php/242168-mehrseitige-formulare-inhalte-weitertragen-und-auswirkungen-auf-der-naechste-seite.html#post1261546 hat gesagt.:
Der Aufruf der session_start()-Funktion sollte vor jeglicher Ausgabe stattfinden, da es sonst beim Setzen eines Cookies zu Problemen kommen kann.
 
Aber in der 02.php steht doch session_start() ?!

<?php
session_start();

//Variable setzen
if(isset($_POST['radio01']))
{
$_SESSION['radio01']= $_POST['radio01'];
}

//Variable auslesen
if(isset($_SESSION['radio01']))
{
echo $_SESSION['radio01'];
}


?>
 
Ok,
ich habe also immer an den Anfang des Quellcodes
auf jeder Seite das sessions_start() eingefügt.

Jetzt wird auch "1" als Antwort ausgegeben (sofern der erste Radio-Button ausgewählt wurde).
Aber: Wie kann ich jetzt da die entsprechende Antwort includen?
 
Zurück