Ich verzweifle an dem Problem Sessions :-(
Kann mir bitte jemand weiterhelfen?
der Code sieht vielleicht etwas lang aus ... ich hoffe mir kann trotzdem
jemand weiterhelfen?
Kurze Beschreibung:
es sind 3 Seite: seite0.php, seite1.php und seite2.php
Ziel ist es, dass
- alle Variablen richtig mitgeschleift werden auf den nachfolgenden Seiten
- die Eingabe überprüft wird; und nur wenn sie richtig ist (hier also nicht leer ist) soll auf die nächste Seite weitergesprungen werden
Ist die Eingabe falsch, so wird zur ursprünglichen Seite zurückgesprungen
Bsp:
-auf Seite0.php wird eine Eingabe im Feld Fld1 gemacht, aber in Fld2 nicht
-Es wird beim Abschicken zu Seite1.php gesprungen
-dort wird festgestellt, dass ein Feld nicht ausgefüllt wurde und es soll nun wieder auf Seite0.php gesprungen werden, damit der User dieses Feld auch ausfüllt
Vielen, vielen Dank für eure Hilfe :-?
Kann mir bitte jemand weiterhelfen?
der Code sieht vielleicht etwas lang aus ... ich hoffe mir kann trotzdem
jemand weiterhelfen?
Kurze Beschreibung:
es sind 3 Seite: seite0.php, seite1.php und seite2.php
Ziel ist es, dass
- alle Variablen richtig mitgeschleift werden auf den nachfolgenden Seiten
- die Eingabe überprüft wird; und nur wenn sie richtig ist (hier also nicht leer ist) soll auf die nächste Seite weitergesprungen werden
Ist die Eingabe falsch, so wird zur ursprünglichen Seite zurückgesprungen
Bsp:
-auf Seite0.php wird eine Eingabe im Feld Fld1 gemacht, aber in Fld2 nicht
-Es wird beim Abschicken zu Seite1.php gesprungen
-dort wird festgestellt, dass ein Feld nicht ausgefüllt wurde und es soll nun wieder auf Seite0.php gesprungen werden, damit der User dieses Feld auch ausfüllt
Vielen, vielen Dank für eure Hilfe :-?
PHP-Code:
// seite0.php -------------------------------------------------------------------------------------------------------------------------
<?php
session_save_path("./sessions");
session_start();
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="seite1.php">
<?php
if ($resFld1 == 1) {
echo "Bitte geben Sie einen korrekten Wert für das Fld1-Feld ein.";
}
?>
<p>seite0.php</p>
<p>Fld1:
<input type="text" name="Fld1" value="<?php echo $Fld1; ?>">
</p>
<?php
if ($resFld2 == 1) {
echo "Bitte geben Sie einen korrekten Wert für das Fld2-Feld ein.";
}
?>
<p>Fld2:
<input type="text" name="Fld2" value="<?php echo $Fld2; ?>">
</p>
<p>
<input type="submit" name="next1" value="Abschicken">
</p>
</form>
</body>
</html>
// seite1.php -------------------------------------------------------------------------------------------------------------------------
<?php
session_save_path("./sessions");
session_start();
function generateFld3Options () {
echo ' <select name="Fld3"> ';
for ($i=1;$i<=10;$i++) {
echo " <option> Option ".$i." </option> ";
}
} // function
function send_setted_sessions () {
$_SESSION['Fld1'] = $Fld1;
$_SESSION['Fld2'] = $Fld2;
$_SESSION['resFld1'] = $resFld1;
$_SESSION['resFld2'] = $resFld2;
header ("Location: seite0.php");
} // function
$doIt = false;
if ($resAbgeschickt==true) {$doIt = true;}
if (isset ($next1)) {$doIt = true;}
if ($doIt==true) {
$resFld2 = empty($Fld2);
$resFld1 = empty($Fld1);
if (!(($resFld1 == 0) && ($resFld2 == 0))) {
// es wurde nicht alles richtig ausgefuellt
if (!($resAbgeschickt==true)) {
send_setted_sessions();
}
}
} else {
echo "ILLEGAL CALL on seite1.php!<br>";
echo "next2: ".$next2;
exit();
}
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="seite2.php">
<p>seite1.php</p>
<p>Fld1:
<input type="text" name="Fld1" value="<?php echo $Fld1; ?>">
</p>
<p>Fld2:
<input type="text" name="Fld2" value="<?php echo $Fld2; ?>">
</p>
<p>Fld3:
<?php
generateFld3Options();
?>
</p>
<p>
<input type="submit" name="next2" value="Abschicken">
</p>
</form>
</body>
</html>
// seite2.php -------------------------------------------------------------------------------------------------------------------------
<?php
//ob_start();
session_save_path("./sessions");
session_start();
function send_setted_sessions () {
$_SESSION['Fld1'] = $Fld1;
$_SESSION['Fld2'] = $Fld2;
$_SESSION['Fld3'] = $Fld3;
$_SESSION['resFld1'] = $resFld1;
$_SESSION['resFld2'] = $resFld2;
$_SESSION['resFld3'] = $resFld3;
$_SESSION['resAbgeschickt'] = $resAbgeschickt;
header ("Location: seite1.php");
} // function
if (isset ($next2)) {
$resFld2 = empty($Fld2);
$resFld1 = empty($Fld1);
$resFld3 = empty($Fld3);
$resAbgeschickt = true;
if ($Fld1 == "now") {
echo "auf seite2.php: "."<br>";
echo "Fld2: ".$Fld2."<br>";
echo "next2: ".$next2."<br>";
exit;
}
if (!(($resFld1 == 0) && ($resFld2 == 0) && ($resFld3 == 0))) {
// es wurde nicht alles richtig ausgefuellt
send_setted_sessions();
}
} else {
echo "ILLEGAL CALL on seite2.php! <br>";
exit();
}
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="post" action="seite2.php">
<p>seite2.php</p>
<p>Fld1:
<input type="text" name="Fld1" value="<?php echo $Fld1; ?>">
</p>
<p>Fld2:
<input type="text" name="Fld2" value="<?php echo $Fld2; ?>">
</p>
<p>Fld3:
<?php
echo $Fld3;
?>
</p>
<p> </p>
<p> </p>
</form>
</body>
</html>
Kommentar