dedlfix: login.php input leeren nach zweitem submit (error)

Beitrag lesen

Tach!

Jetzt möchte ich aber gern das bei einem erfolg [...] soll alles gelöscht werden also iwie alle php sachen vorher stoppen oder bei der letzten ifelse ein input clear all sowas in der art.

Ja, dann mach das doch. Schreib das Formular nur im anderen Zweig. Damit das nicht so riesig wird, kannst du das ja in eine Include-Datei auslagern oder eine Funktion schreiben.

             echo "<p class='php'>Danke ".(htmlspecialchars(stripslashes(trim($_POST["vorname"]))))."<br> für deine Registrierung!</p>";

stripslashes()? Wie uralt ist denn deine PHP-Version? Magic Quotes, wogegen man stripslashes() verwendete, ist doch schon seit sehr langer Zeit nicht mehr in PHP enthalten.

                 <option value="1">1</option>
	               <option value="2">2</option>
	               <option value="3">3</option>
[...]
              	 <option value="31">31</option>

Für solche hat man die for-Schleife erfunden.

                 <option value="Januar">Januar</option>
                 <option value="Februar">Februar</option>
                 <option value="März">März</option>
[...]

Ein Array mit den Monatsnamen und eine foreach-Schleife reduziert auch hier wieder den Wiederholungsaufwand und die Codegröße.

                 <option value="2006">2006</option>
                 <option value="2005">2005</option>
	               <option value="2004">2004</option>
[...]

Mit for-Schleifen kann man auch rückwärts zählen.

               if(empty(htmlspecialchars(stripslashes(trim($_POST["vorname"]))))) {

Die Verwendung von htmlspecialchars() ergibt hier an der Stelle (und den anderen Wiederholungen) keinen Sinn. Das ist für die HTML-geechte Behandlung der Ausgabe da, und hier prüfst du nur einen Wert.

dedlfix.