Sven: Formular: Daten bei Falscheingabe nicht verlieren!

Hallo,

ich habe ein Formular erstellt. Wenn ich vergesse, ein Feld auszufüllen, weist mich das PHP-Script darauf hin. Allerdings sind dann alle bereits eingegebenen Daten weg.

Das Formular habe ich als reines HTML - das PHP-Script ist am Anfang der Seite (ist übersichtlicher find ich).

Wie bekomme ich es nun hin, dass die Daten nicht verloren gehen? Mir ist eine Möglichkeit bekannt: Wenn ich das Formular nicht mehr als HTML, sondern per echo über PHP ausgebe, dann kann ich einfach bei jedem Feld festlegen, dass er als Anfangswert den Variablen-Inhalt nehmen soll. Beispiel: Das Feld heisst $name, dann vergebe ich Anfangswert auch $name (value="$name") und schon funktioniert es.

Ich möchte das Formular aber nicht über PHP-echo ausgeben, sondern als HTML lassen.

Ist das so nicht möglich?

Grüsse
Sven

  1. Moin,

    Ich möchte das Formular aber nicht über PHP-echo ausgeben, sondern als HTML lassen.

    Musst du auch nicht, du kannst ja wild zwischen PHP und HTML wechseln:

    <input type="text" name="foobar" value="<?php if($_REQUEST["foobar"]) echo htmlentities($_REQUEST["foobar"]);?>">

    (Wenn bei dir magic_quotes aktiviert sind, musst du das vielleicht noch um einen stripslashes()-Aufruf ergänzen. Eventuell empfiehlt es sich dann sogar dafür eine Funktion mit einem etwas kürzeren Namen zu definieren.)

    --
    Henryk Plötz
    Grüße aus Berlin
    ~~~~~~~~ Un-CDs, nein danke! http://www.heise.de/ct/cd-register/ ~~~~~~~~
    ~~ Help Microsoft fight software piracy: Give Linux to a friend today! ~~