Teil von  SELFPHP   Teil von  Praxisbuch  Teil von  Formulare und PHP
Letztes Update: 16.08.2005 17:53:45


Navigation

Seite News *

Seite Startseite
Seite Über SELFPHP
Seite Werbung
Seite Kontakt
Seite Forum *
Seite Download *
Seite SELFPHP Banner *
Seite SELFPHP in Buchform
Seite Newsletter *
Seite Impressum

 
* Link führt ins Internet



 

Formulare über mehrere Seiten




Wer von Ihnen bereits komplexe Formulare erstellt hat, der kennt das Problem. Bei Formularen, die sich über mehrere Seiten erstrecken, müssen die jeweiligen Eingaben von Formular zu Formular übergeben werden. Dies kann recht aufwendig sein, da dies meist über versteckte Formularfelder geschieht. Mit einer kleinen PHP Funktion kann man die versteckten Formularfelder dynamisch erzeugen.


Beispiel – function.inc.php



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



Die Funktion form_daten() ist recht einfach aufgebaut. Die Bedingung prüft mit Hilfe der Funktion isset(), ob die jeweiligen Arrays gesetzt wurden. Anschliessend wird das entsprechende superglobale Array $_POST oder $_GET, durch die foreach-Schleife weiter verarbeitet. Mit ihr wird der Schlüssel, oder Index des Arrays, sowie der zugewiesene Wert ermittelt, und dann im versteckten Formularfeld wieder ausgegeben, sodass die Daten erneut an das nächste Skript verschickt werde können.


Beispiel – form1.php



<html>
<head>
<title>Formular - 1</title>
</head>
<body>
<form method="post" action="form2.php">
  <p>
    Vorname: <input type="text" name="vorname"><br>
    Nachname: <input type="text" name="nachname"><br>
    Strasse: <input type="text" name="strasse"><br>
    Ort: <input type="text" name="ort"><br>
    Plz: <input type="text" name="plz"><br>
  </p>
  <p>
    <input type="submit" name="Submit" value="Weiter...">
  </p>
  </form>
</body>
</html>




Beispiel - form2.php



<?php include("./function.inc.php"); ?>
<html>
<head>
<title>Formular - 2</title>
</head>
<body>
<form method="post" action="senden.php">
  <p>
    Kreditinstitut: <input type="text" name="bank"><br>
    BLZ: <input type="text" name="blz"><br>
    Konto-Nr.: <input type="text" name="kto_nr"><br>
    <?php form_daten(); ?>
  </p>
  <p>
    <input type="submit" value="absenden">
  </p>
</form>
</body>
</html>



Natürlich können Sie das Beispiel ohne weiteres erweitern!


 


Dynamische Formulare
 






© 2001-2005 E-Mail SELFPHP - Damir Enseleit, info@selfphp.deImpressumKontakt
© 2005 E-Mail PHP5 Praxisbuch - Matthias Kannengiesser, m.kannengiesser@selfphp.de