Erelid |
|
Dit is het mijne (het heet wel registreren.php maar het is hetzelfde script + email):
<html>
<head>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body>
<?php
// als het formulier nog niet is ingevuld
if(!isset($_POST['naam'])) {
?>
<form action="index.php?pagina=registreren" method="post">
<div align="center">
<p>Gebruikersnaam<br>
<input type="text" name="naam" size="40" maxlength="20" />
<br>
E-mailadres:<br>
<input name="email" type="text" id="email" size="40" />
</p>
<p>Wachtwoord:<br />
<input type="password" name="wacht1" size="40" maxlength="30" />
<br>
Wachtwoord herhalen: <br />
<input type="password" name="wacht2" size="40" maxlength="30" />
<br>
<br />
<!--
en wat je verder over deze gebruiker bij wilt houden
bijvoorbeeld leeftijd, woonplaats, email, ...
voor het opvragen van het wachtwoord etc. etc.
hier moet je dan ook velden voor in je tabel 'members' aanmaken.
Op deze extra velden moeten hieronder ook controles uitgevoerd worden of ze ingevuld zijn!
-->
<input type="image" style="border: 0px; " src="images/btn_reg.jpg" name="submit">
</p>
</div>
</form>
<?php
// formulier gepost, kijk of alle velden ook daadwerkelijk zijn ingevuld
} elseif(trim($_POST['naam']) <> "" && trim($_POST['wacht1']) <> "") {
// formulier ingevuld - kijk eerst of de gebruiker al bestaat
$naam = $_POST['naam'];
$email = $_POST['email'];
$mailres = mysql_query("SELECT * FROM users WHERE email='".$email."'") or die(mysql_error());
$res = mysql_query("SELECT * FROM users WHERE name='".$naam."'") or die(mysql_error());
if(mysql_num_rows($res) == 0) {
if(mysql_num_rows($mailres) == 0) {
// geen resultaten - dit is wat we willen
// kijk of de opgegeven wachtwoorden overeenkomen
if(!strcmp($_POST['wacht1'], $_POST['wacht2'])) {
// wachtwoorden komen overeen - sla alle gegevens op in de database
// naam is al opgehaald uit het formulier
$wacht = md5($_POST['wacht1']); // versleuteld wachtwoord
$level = 1; // standaard gebruikersniveau
mysql_query("INSERT INTO users (name, pass, level, email) VALUES ('".$naam."','".$wacht."',".$level.",'".$email."')") or die(mysql_error());
/* ZEND E-MAIL BERICHT
################################################
################################################
*/
$to = "$email" . ", " ; // note the comma
/* subject */
$subject = "Account op Room of Shadows";
/* message */
$message = '
// HTML OPGEMAAKTE E-MAIL VERZENDEN
';
/* To send HTML mail, you can set the Content-type header. */
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
/* additional headers */
$headers .= "From: ROS Accountbeheer <noreply@roomofshadows.com>\r\n";
/* and now mail it */
mail($to, $subject, $message, $headers);
/* EINDE E-MAILZENDING */
// geef melding weer
?>
Je gegevens zijn opgeslagen.<br />
Je kunt <a href="login.php">hier</a> naartoe om in te loggen.<br />
<?php
} else {
// wachtwoorden komen niet overeen
?>
De twee opgegeven wachtwoorden zijn niet hetzelfde.<br />
Druk op de "back" knop van je browser en voer twee identieke wachtwoorden in.<br />
<?php
}
} else { ?>Dit e-mailadres is reeds geregistreerd.<?php }
} else {
// er bestaat al een gebruiker met deze naam
?>
Er bestaat al een gebruiker met deze naam.<br />
Druk op de "back" knop van je browser en geef een andere naam op.<br />
<?php
}
} else {
// sommige velden zijn niet ingevuld
?>
Alle velden dienen ingevuld te worden.<br />
Druk op de "back" toets en vul in alle velden wat in.<br />
<?php
}
?>
<html> <head> <link href="style.css" rel="stylesheet" type="text/css"> </head> <body> <?php // als het formulier nog niet is ingevuld if(!isset($_POST['naam'])) { ?> <form action="index.php?pagina=registreren" method="post"> <div align="center"> <p>Gebruikersnaam<br> <input type="text" name="naam" size="40" maxlength="20" /> <br> E-mailadres:<br> <input name="email" type="text" id="email" size="40" /> </p> <p>Wachtwoord:<br /> <input type="password" name="wacht1" size="40" maxlength="30" /> <br> Wachtwoord herhalen: <br /> <input type="password" name="wacht2" size="40" maxlength="30" /> <br> <br /> <!-- en wat je verder over deze gebruiker bij wilt houden bijvoorbeeld leeftijd, woonplaats, email, ... voor het opvragen van het wachtwoord etc. etc. hier moet je dan ook velden voor in je tabel 'members' aanmaken. Op deze extra velden moeten hieronder ook controles uitgevoerd worden of ze ingevuld zijn! --> <input type="image" style="border: 0px; " src="images/btn_reg.jpg" name="submit"> </p> </div> </form> <?php // formulier gepost, kijk of alle velden ook daadwerkelijk zijn ingevuld } elseif(trim($_POST['naam']) <> "" && trim($_POST['wacht1']) <> "") { // formulier ingevuld - kijk eerst of de gebruiker al bestaat $naam = $_POST['naam']; $email = $_POST['email']; // geen resultaten - dit is wat we willen // kijk of de opgegeven wachtwoorden overeenkomen if(!strcmp($_POST['wacht1'], $_POST['wacht2'])) { // wachtwoorden komen overeen - sla alle gegevens op in de database // naam is al opgehaald uit het formulier $wacht = md5($_POST['wacht1']); // versleuteld wachtwoord $level = 1; // standaard gebruikersniveau mysql_query("INSERT INTO users (name, pass, level, email) VALUES ('".$naam."','".$wacht."',".$level.",'".$email."')") or die(mysql_error()); /* ZEND E-MAIL BERICHT ################################################ ################################################ */ $to = "$email" . ", " ; // note the comma /* subject */ $subject = "Account op Room of Shadows"; /* message */ $message = ' // HTML OPGEMAAKTE E-MAIL VERZENDEN '; /* To send HTML mail, you can set the Content-type header. */ $headers = "MIME-Version: 1.0\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; /* additional headers */ $headers .= "From: ROS Accountbeheer <noreply@roomofshadows.com>\r\n"; /* and now mail it */ mail($to, $subject, $message, $headers); /* EINDE E-MAILZENDING */ // geef melding weer ?> Je gegevens zijn opgeslagen.<br /> Je kunt <a href="login.php">hier</a> naartoe om in te loggen.<br /> <?php } else { // wachtwoorden komen niet overeen ?> De twee opgegeven wachtwoorden zijn niet hetzelfde.<br /> Druk op de "back" knop van je browser en voer twee identieke wachtwoorden in.<br /> <?php } } else { ?>Dit e-mailadres is reeds geregistreerd.<?php } } else { // er bestaat al een gebruiker met deze naam ?> Er bestaat al een gebruiker met deze naam.<br /> Druk op de "back" knop van je browser en geef een andere naam op.<br /> <?php } } else { // sommige velden zijn niet ingevuld ?> Alle velden dienen ingevuld te worden.<br /> Druk op de "back" toets en vul in alle velden wat in.<br /> <?php } ?>
|