Anzeige

 Mehrere Formulare hintereinander


Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
#1
Hallo zusammen,
ich hänge seit ein paar Tagen an einem Problem. Ich möchte mehrere html-Formulare hintereinander ausführen. Leider verschwindet das zweite Formular immer nach dem der Submit-Button gedrückt wurde.
Hier mal ein Beispielprogramm:
Code:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="dbstyle.css">
<meta charset="ISO-8859-1">
<title>Formulare hintereinander</title>
</head>
<body>

<?php
error_reporting(E_ALL);

echo "\n".'<form action="" method="post" name="null" id="formnull">';
echo "\n".'<label>ID0 <input type="text" name="labname0" id="labid0"></label>';
echo "\n".'<input type="hidden" name="hidname0" value="hidval0">';
echo "\n".'<input type="submit" id="subform0" value="form0">';
echo "\n".'</form>'."\n";

if (isset($_POST['hidname0']) and $_POST['hidname0']=='hidval0'){
    if ($_POST['labname0']!=''){
        $id = trim($_POST['labname0']);
        if ( $id < 3.1415 ){
            echo 'kleiner pi'.$id;
            echo $_SERVER['PHP_SELF'];
        }
        else {
            echo 'größer PI'.$id;
           
            echo "\n".'<form action="" method="post" name="eins" id="formeins">';
            echo "\n".'<label>ID1 <input type="text" name="labname1" id="labid1"></label>';
            echo "\n".'<input type="hidden" name="hidname1" value="hidname1">';
            echo "\n".'<input type="submit" id="id1" value="form1">';
            echo "\n".'</form>';
           
            if (isset($_POST['hidname1']) and $_POST['hidname1']=='hidname1'){
                echo "TEST";
                $id1 = trim($_POST['labid1']);
                if ( $id1 < 3.1415 ){
                    echo "kleiner pi 1";
                }
                else {
                    echo "größer PI 1";
                }
               
            }
        }
    }
}
?>

</body>
</html>
Am liebsten wäre es mir, wenn das zweite Formular einfach stehen bleibt und da drunter das Ergebnis erscheint.
Entweder stehe ich hier auf dem Schlauch oder geht das überhaupt nicht?

Vielen Dank!
 

Sempervivum

Erfahrenes Mitglied
#2
Bevor Du das zweite Formular generierst, prüfst Du ja dieses:
Code:
if (isset($_POST['hidname0']) and $_POST['hidname0']=='hidval0'){
Auch nach dem Abschicken des zweiten Formulars findet die selbe Prüfung statt. Dann ist jedoch hidname0 nicht mehr gesetzt, sondern hidname1 mit dem Wert hidname1, so dass Du in diesen Zweig, wo das zweite Formular generiert wird, nicht hinein kommst.
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…
Anzeige