Hilfe bei einem Registrierungsformular

M-P

Mitglied
Also ich habe folgenden Code

PHP:
<?php

include 'config.php';

$anmeldedatum=date("j. F Y"); 

	if ($_POST['submit'])
{
 $sql = 'INSERT INTO registrierung(Vorname, Nachname, Email, Passwort, Anmeldedatum) VALUES("'.$_POST['Vorname'].'","'.$_POST['Nachname'].'","'.$_POST['Email'].'","'.$_POST['Passwort'].'","'.$_POST['Anmeldedatum'].'")';
mysql_query($sql);


}
	
	if( empty ($_POST['Vorname']) == TRUE or empty ($_POST['Nachname']) == TRUE or empty ($_POST['Email']) == TRUE or empty ($_POST['Passwort']) == TRUE)
{
	if( $_POST["Kontrolle"] == 1)
	{
	echo "Sie " .htmlentities(müssen) ." alle Felder ".htmlentities(ausfüllen). " um fortzufahren.";	
	}
echo ' 

<form method="post" action="">


<table>
	<tr>
    	<td>Vorname:</td>
        <td><input type="text" name="Vorname" value="'.$_POST["Vorname"].'" /></td>
    </tr>
    <tr>
    	<td>Nachname:</td>
        <td><input type="text" name"Nachname" value="'.$_POST["Nachname"].'" /></td>
    </tr>
    	<tr>
    	<td>E-Mail Adresse (= Benutzername für Login):</td>
        <td><input type="text" name="Email" value="'.$_POST["Email"].'" /></td>
    </tr>
    <tr>
    	<td>Passwort:</td>
        <td><input type="password" name"Passwort" value="'.$_POST["Passwort"].'" />
		<input type="hidden" name="Anmeldedatum" id="Anmeldedatum" value="'. $anmeldedatum .'"/>
		<input type="hidden" name="Kontrolle" id="Kontrolle" value="1"/></td>
    </tr>
        <tr>
    	<td colspan="2">
        <input type="submit" value="Registrieren" />
		
        </td>
    </tr>
</table>

</form>

';
}
else
{
	echo "Registrierung erfolgreich!";
}
?>

Wenn man die Felder nicht ausfüllt kommt die dazugehörige Message aber auch wenn man alles korrekt ausgefüllt hat. Aber warum? Wahrscheinlich habe ich mal wieder eine Kleinigkeit übersehen es wäre nett wenn mir jemand helfen könnte!

Danke schon mal im Voraus!:)
 
Zuletzt bearbeitet:
empty benötigt kein == TRUE dahinter. Funktionen geben so schon etwas zurück das direkt überprüft wird.

PHP:
if (empty($_POST['Vorname']) OR empty($_POST['Nachname']) OR empty($_POST['Email']) OR empty($_POST['Passwort']))

htmlentities ist in deinem Text auch unsinnig. Benutz doch keine Performace killende Funktionen um ein ü in ein &uuml; umzuwandeln ...


Beiläufig, ich denke der Fehler liegt im Inputfeld für das Passwort, da fehlt nach name ein =. name="Passwort"
 
  • Gefällt mir
Reaktionen: M-P
Code:
<td><input type="password" name="Passwort" value="'.$_POST["Passwort"].'" />

*edit*
Na nu, die Gleichheitszeichen vermehren sich auf wundersame Weise. :D
 
Zuletzt bearbeitet:
Zurück