function register() { // Register a new account.
$controlquery = doquery("SELECT * FROM {{table}} WHERE id='1' LIMIT 1", "control");
$controlrow = mysql_fetch_array($controlquery);
if (isset($_POST["submit"])) {
extract($_POST);
$errors = 0; $errorlist = "";
// Process username.
if ($username == "") { $errors++; $errorlist .= "Du must einen Usernamen angeben.<br />"; }
if (preg_match("/[^A-z0-9_\-]/", $username)==1) { $errors++; $errorlist .= "Der Username darf nur aus Buchstaben und Zahlen bestehen.<br />"; }
$usernamequery = doquery("SELECT username FROM {{table}} WHERE username='$username' LIMIT 1","users");
if (mysql_num_rows($usernamequery) > 0) { $errors++; $errorlist .= "Username existiert bereits - bitte wähle einen anderen.<br />"; }
// Process email address.
if ($email1 == "" || $email2 == "") { $errors++; $errorlist .= "Du must eine E-mail angeben.<br />"; }
if ($email1 != $email2) { $errors++; $errorlist .= "Die angegeben E-mails stimmen nicht überein.<br />"; }
if (! is_email($email1)) { $errors++; $errorlist .= "Bitte gib eine normale E-mail Adresse an. (Name@name.xx / z.B. info@Dark-Sword.de)<br />"; }
$emailquery = doquery("SELECT email FROM {{table}} WHERE email='$email1' LIMIT 1","users");
if (mysql_num_rows($emailquery) > 0) { $errors++; $errorlist .= "E-mail existiert bereits - bitte wähle eine andere.<br />"; }
// Process password.
if (trim($password1) == "") { $errors++; $errorlist .= "Du must ein Passwort angeben.<br />"; }
if (preg_match("/[^A-z0-9_\-]/", $password1)==1) { $errors++; $errorlist .= "Das Passwort darf nur aus Buchstaben und Zahlen bestehen.<br />"; }
if ($password1 != $password2) { $errors++; $errorlist .= "Die angegebenen Passwörter stimmen nicht überein.<br />"; }
$password = md5($password1);
if ($errors == 0) {
if ($controlrow["verifyemail"] == 1) {
$verifycode = "";
for ($i=0; $i<8; $i++) {
$verifycode .= chr(rand(65,90));
}
} else {
$verifycode='1';
} //V2.0
$phpbbquery = phpbbdoquery("INSERT INTO {{table}} SET user_id='',user_regdate=NOW(),username='$username',username_clean='$username',user_password='$passwo rd',group_id='2',user_lang='de',user_email='$email1'", "users") or die(mysql_error());
$phpbbquery = phpbbdoquery("INSERT INTO {{table}} SET user_id='',group_id='2',user_pending='0'", "user_group") or die(mysql_error());
$query = doquery("INSERT INTO {{table}} SET id='',regdate=NOW(),verify='$verifycode',username='$username',password='$password',email='$email1',c harclass='$charclass',difficulty='$difficulty'", "users") or die(mysql_error());
if ($controlrow["verifyemail"] == 1) {
if (sendregmail($email1, $verifycode) == true) {
$page = "Dein Account wurde erfolgreich erstellt!<br /><br />Du hast eine <b> Bästätigungs E-mail mit deinem Freischalte-code<b/> erhalten! Bitte suche auch im Spam Ordner (oder ähnliches (fals vorhanden))! <br> <a href=\"users.php?do=verify\">Ich habe die E-Mail erhalten!</a>";
} else {
$page = "Dein Account wurde erstellt.<br /><br />Aber es gab ein Problem mit der Bestätigungsmail, bitte benachrichtige den Administrator (XXXXXXX).";
}
} else {
$page = "Dein Account wurde freigeschalten.<br /><br />Du kannst dich jetzt<a href=\"login.php?do=login\"> auf der Startseite einloggen!</a>".$controlrow["gamename"]."!";
}
} else {
$page = "Dein Account konnte auf grund folgenden Fehlern nicht erstellt werden:<br /><span style=\"color:red;\">$errorlist</span><br />Bitte versuch es nochmal.";
}
} else {
$page = gettemplate("register");
if ($controlrow["verifyemail"] == 1) {
$controlrow["verifytext"] = "<br /><span class=\"small\">Ein Aktivierungscode wurde an deine E-mail gesendet.</span>";
} else {
$controlrow["verifytext"] = "";
}
$page = parsetemplate($page, $controlrow);
}