Hallo luitjes,
Ik heb net in de script database een leuk login systeempie gevonden, alles werk, maar de e-mail controle werkt niet.
Code:
Moeilijk door te spitten? Hier het relevante stukje:
Ik hoop dat ik snel en goed geholpen kan worden
Groetjes,
kloentje2
EDIT: Wat is precies mis gaat: Hij geeft bij ieder adres negatief resultaat.
Ik heb net in de script database een leuk login systeempie gevonden, alles werk, maar de e-mail controle werkt niet.
Code:
Code:
<?php
include('config.inc.php');
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
$formulier = true;
} else {
$formulier = false;
//controles uitvoeren
if(!ereg("^[A-Za-z0-9]+$",$_POST["username"]) || strlen($_POST["username"]) < 3) {
echo '<b style="color:#FDB839">• Uw gebruikersnaam is ongeldig.</b><br>';
$_POST["Gebruikersnaam"] = ""; $formulier = true;
}
$result = $mysqli->query("SELECT ID FROM ".$settings['db_gebruikers_table']." WHERE gebruikersnaam LIKE '".$mysqli->real_escape_string($_POST['username'])."'");
if(!empty($_POST["username"]) && $result->num_rows > 0) {
echo '<b style="color:#FDB839">• Deze gebruikersnaam is al bezet.</b><br>';
$_POST["Gebruikersnaam"] = ""; $formulier = true;
}
if(empty($_POST["pass"])) {
echo '<b style="color:#FDB839">• Uw password is ongeldig.</b><br>';
$_POST["pass"] = ""; $formulier = true;
}
if(empty($_POST["email"]) || preg_match("/^[A-Za-z0-9._\-]+\@[A-Za-z0-9._\-]+\.[A-Za-z]{2,4}$/", $_POST["email"])) {
echo '<b style="color:#FDB839">• Uw emailadres is ongeldig.</b><br>';
$_POST["email"] = ""; $formulier = true;
}
if($formulier) { // Wel of niet verzenden
echo '<br>';
$_POST["pass"] = "";
} else { // Verzenden
$sql = "
INSERT INTO ".$settings['db_gebruikers_table']." (
gebruikersnaam,
wachtwoord,
voornaam,
achternaam,
emailadres,
ipadres,
startdatum )
VALUES (
'".$mysqli->real_escape_string(htmlspecialchars($_POST['username']))."',
'".$mysqli->real_escape_string(sha1(htmlspecialchars($_POST['username']).$_POST['pass']))."',
'".$mysqli->real_escape_string(htmlspecialchars($_POST['fname']))."',
'".$mysqli->real_escape_string(htmlspecialchars($_POST['lname']))."',
'".$mysqli->real_escape_string($_POST['email'])."',
'".$mysqli->real_escape_string($_SERVER['REMOTE_ADDR'])."',
NOW()
)";
if(!$result = $mysqli->query($sql)) {
trigger_error('Fout in query: '.$mysqli->error);
echo '<br />Er is een fout opgetreden, de gebruiker is niet toegevoegd.';
} else {
echo 'De gebruiker is succesvol toegevoegd.';
}
}
}
if($formulier) {
echo ' <form method="post" action="'.end(explode('/', $_SERVER["REQUEST_URI"])).'">
<p><label>Gebruikersnaam:</label><input type="text" name="username" value="" /></p>
<p><label>Wachtwoord:</label><input type="password" name="pass" value="" /></p>
<p></p>
<p><label>Voornaam:</label><input type="text" name="fname" value="" /></p>
<p><label>Achternaam:</label><input type="text" name="lname" value="" /></p>
<p><label>E-mail:</label><input type="text" name="email" value="" /></p>
<p><input type="submit" value="Registreren!" /></p>
</form>
';
}
?>
Moeilijk door te spitten? Hier het relevante stukje:
Code:
if(empty($_POST["email"]) || preg_match("/^[A-Za-z0-9._\-]+\@[A-Za-z0-9._\-]+\.[A-Za-z]{2,4}$/", $_POST["email"])) {
echo '<b style="color:#FDB839">• Uw emailadres is ongeldig.</b><br>';
$_POST["email"] = ""; $formulier = true;
}
Ik hoop dat ik snel en goed geholpen kan worden
Groetjes,
kloentje2
EDIT: Wat is precies mis gaat: Hij geeft bij ieder adres negatief resultaat.