Ik ben nog steedsbezig met m'n eerste profielensysteem en heb weer een vastlopertje:
Ik weet nu eindelijk hoe ik de gegevens die een gebruiker in een html form invult in mijn database krijg, maar nu wil ik in het registratie formulier pass 1 en pass 2 (bijv) checken.
En dan moet het pas de db in gaan als het ook klopt.
Ik heb nu dit in m'n registratie pagina staan :
<?php
if(!empty($_POST['pass']))
{
echo "U heeft geen wachtwoord ingevuld! Vul hem aub in.";
}
?>
Ik neem aan dat ik hier iets moet verbouwen zodat pass1 en pass 2 gechecked worden en dan pas de db in gaan.
Volgens mij bedoelt de TS nog steeds met het registreren.
Ziet de mysql er bij jou uit voor inloggen?
<?php
if($_POST['pass'] == $_POST['pass2']){
// doe iets -> voer de pass in het mysql =)
mysql_query("INSERT INTO `gasten` (`user`, `pass`) VALUES ('".$_POST['user']."', '".$_POST['pass']."')");
}
else {
// pass is niet gelijk aan pass2
echo "Je wachtwoorden zijn niet gelijk!"; // of iets dergelijks...
}
?>
maar nu wil ik in het registratie formulier pass 1 en pass 2 (bijv) checken
Hieruit maak ik op dat je wilt checken of deze 2 wel aan elkaar gelijk zijn. Dat lijkt mij ook de enige mogelijkheid, ik zou niet weten wat je nog meer kunt checken aan 2 door de gebruiker ingegeven wachtwoorden.
Let er wel op dat je eerst checkt of (bijv) $_POST['pass1'] niet empty is, en dan pas of ze gelijk zijn. Je zou bovendien nog een minimale lengte kunnen checken.
Ik wil zorgen dat er een juist wachtwoord de db in gaat.
Nadat er dus gecontroleerd is of de 2 velden gelijk zijn aan elkaar moet er dus een goed resultaat de db in.
Hier even een kleine samenvatting van hoe het er ongeveer uit ziet:
<?php
<form>
<label>pass
<input type="pass">
</label>
<label>pass2
<input type="pass">
</label>
if(!empty($_POST['pass']))
{
echo "U heeft geen wachtwoord ingevuld! Vul hem aub in.";
}
if(!empty($_POST['pass'2]))
{
echo "U heeft geen wachtwoord2 ingevuld! Vul hem aub in.";
}
//Hier moet dan ook gecontrolleerd worden of de 2 pass velden gelijk zijn aan elkaar
mysql_query("INSERT INTO `gasten` (`user`, `pass`) VALUES ('".$_POST['user']."', '".$_POST['pass']."')");
//Dan moet hij zo dus de db in
?>
Zo wil ik dus een veilige registratie pagina maken.
(Al begreep ik dat deze opbouw van het script al niet redelijk veilig was)
Zie mijn reactie van 23.07.2007 17:06, daar staat de kant-en-klare oplossing. Nog even op de juiste plek in je code zetten, mag je zelf doen, en klaar is klara.