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

altox-de

Erfahrenes Mitglied
Hallo zusammen.
Ich habe ein mehrseitiges Formular,
das am Ende nichts versenden, sondern nur Ergebnisse anzeigen soll.
Aber zuerst zu einem anderen Problem:

Die Seiten liegen in folgenden Ordnern
-> befragung
-> -> 01
-> -> -> 01.php
-> -> 02
-> -> -> 02-a.php
-> -> -> 02-b.php
-> -> -> 02-c.php
-> -> ausgabe.php
-> -> function.inc.php


01.php sieht so aus (Auszug):
PHP:
	<form method="post" action="../02/02-a.php">
															<table width="100%" border="0" cellspacing="0" cellpadding="0">
																<tr>
																	<td valign="top" width="20"><input type="radio" name="radio01" value="1"></td>
																	<td><font face="Arial">fwesf.</font></td>
																</tr>
																<tr>
																	<td valign="top" width="20"><input type="radio" name="radio01" value="2"></td>
																	<td><font face="Arial">fs.</font></td>
																</tr>
																<tr>
																	<td valign="top" width="20"><input type="radio" name="radio01" value="3"></td>
																	<td><font face="Arial">Ich dsfaSF.</font></td>
																</tr>
																<tr>
																	<td valign="top" width="20"></td>
																	<td><input type="submit" name="submitButtonName"></td>
																</tr>
															</table>
														</form>


z.B: 02-a.php sieht so aus (Auszug) - dieser Teil ist identisch mit 02-b.php und 02-c.php,
da unterscheidet sich nur ein anderer Textinhalt der Seite!

Erste Zeile des Quellcodes:
PHP:
<?php include("../function.inc.php") ?>

Dann der Formular-Teil:
PHP:
<form method="post" action="../ausgabe.php">
															<table width="100%" border="0" cellspacing="0" cellpadding="0">
																<tr>
																	<td valign="top" width="20"><input type="radio" name="radio02" value="1"></td>
																	<td><font face="Arial">Ich wefcwec.</font></td>
																</tr>
																<tr>
																	<td valign="top" width="20"><input type="radio" name="radio02" value="2"></td>
																	<td><font face="Arial">awesgfvdhf.</font></td>
																</tr>
																<tr>
																	<td valign="top" width="20"><input type="radio" name="radio02" value="3"></td>
																	<td><font face="Arial">Ich agergw.</font></td>
																</tr>
																<tr>
																	<td valign="top" width="20"></td>
																	<td><input type="submit" name="submitButtonName"><input type="text" name="eMail" size="24"></td>
																</tr><?php form_daten(); ?>
															</table>
														</form>


Das Problem ist folgendes:
Ich will Daten von 01.php zu 02.php etc. bis XX.php weitertragen.
Das klappt auch schon sehr gut mit der "function.inc.php":

PHP:
<?php
function form_daten() {
if (isset($_POST)) {
foreach ($_POST as $key => $elem) {
echo "<input type=\"hidden\" name=\"$key\" value=\"$elem\">";
}
}
else {
foreach ($_GET as $key => $elem) {
echo "<input type=\"hidden\" name=\"$key\" value=\"$elem\">";
}
}
}
?>


Die "ausgabe.php" enthält nur eine Anzeige:
PHP:
<?php

echo "$radio02";

?>


PROBLEM:
Jedoch ist es so, dass ich nicht nur dieses "gesamte Weiterschleppen"
brauche, sondern ich auch eine direkte Einwirkung auf die nächste Seite benötige.

D.h. 01.php enthält drei Antwortmöglichkeiten.
Jede davon soll weitergeschleppt werden, führt aber zu einer anderen Seite,
nämlich 02-a.php, 02-b.php oder 02-c.php (da verschiedene Antworten auf die Fragen gegeben werden müssen!)


WIE KANN ICH DAS REALISIEREN?
 
Zuletzt bearbeitet:
naja...du könntest es bspw. so machen:
anstatt 02-a.php, 02-b.php oder 02-c.php sende das Formular an /02/index.php

dort includest du dann je nach Antwort die entsprechende der 3 Dateien...fertitsch :)
 
Ok, an 2.php und dann mit <include> über die näcshte Frage die Antwort auf 01.php dranhängen...

Aber: Wie weiß ich, WELCHE Antwort aufgerufen werden soll,
also: was muss ich da noch reinprogrammieren, dass die richtige Antwort ausgegeben wird?
Es gibt wie gesagt 3 Antwortmöglichkeiten
 
Zuletzt bearbeitet:
Geht das mit meiner Lösung nicht?
Damit bin ich nämlich schon relativ weit...

Gibt es da nicht einfach so eine Abfrage:
Wenn Antwort 1, dann Meldung 1?!
 
Also baue ich das auf der Seite 2 ein:

PHP:
<?php
if( $_POST['radio01'] == '1' ) {
    echo 'Meldung 1';
}  

if( $_POST['radio02'] == '1' ) {
    echo 'Meldung 2';
}  

if( $_POST['radio03'] == '1' ) {
    echo 'Meldung 3';
}  
?>


Und gebe z.B: anstatt "Meldung 3" ein: "Das ist leider eine nicht sehr positive Antwort,
aber man kann daran arbeiten"?

Danke!
 
Also stimmt der Quellcode so?

Nein, das war noch nicht das gesamte Problem!
Das Problem ist nämlich: Dass die weitergeleiteten Antworten

> zum Einen eben auf der nächsten Seiten Auswirkungen haben sollen
> und zum anderen am Ende nochmals angezeigt werden sollen.

Das mit der Übertragung klappt schon ganz gut,
es ist nur so, dass eben in der "asugabe.php" die Ergebnisse einfach angezeigt werden.

Es soll aber so sein, dass dann auf dieser Seite nochmals ALLE
RadioBoxen mit den angegebenen Fragen angezeigt werden sollen,
dass man das nochmal kontrollieren kann!
DAS IST DAS EIGENTLICHE PROBLEM :D

Viele Grüße
 
Zurück