Location: PHPKode > projects > PHP OpenTailorShop > phpopentailorshop/webkasse/createaccount.php
<?
include "header.php";

function date_german2mysql($datum) 
{
	list($tag, $monat, $jahr) = explode(".", $datum);

	return sprintf("%04d-%02d-%02d", $jahr, $monat, $tag);
}

if ( ! logged_in() )
{
$action = $_POST['action'];
if ( ! isset( $action ) ) 
{
?>
<DIV ID="content">
<FORM ACTION="createaccount.php" METHOD="POST">
<TABLE>
<TR>
	<TH COLSPAN="2">Erstellung eines eigenen Accounts</TH>
</TR>
<TR>
<TD>
	Anmeldung an Realm: 
</TD>
<TD>
	<SELECT SIZE="1" NAME="realm">
<?

	$sql = "SELECT `id`, `name` FROM `realmlist` order by `name` asc";
	$result = mysql_query($sql) or die( mysql_error() );
	if (mysql_num_rows($result) > 0)
	{
		while ( $row = mysql_fetch_array($result) )
		{
			echo '<option value="'.$row['id'].'" >'.$row['name'].'</option>'."\n";
		}
	}
?>		
	</SELECT>
</TD>
</TR>
<TR>
<TD>
	Benutzername: 
</TD>
<TD>
	<INPUT NAME="benutzername" SIZE="30" VALUE"" TYPE"text">
</TD>
</TR>
<TR>
<TD>
	E-Mail Adresse: 
</TD>
<TD>
	<INPUT NAME="email" SIZE="30" VALUE"" TYPE="text">
</TD>
</TR>
<TR>
<TD>
	Passwort: 
</TD>
<TD>
	<INPUT NAME="password" SIZE="20" VALUE"" TYPE="password">
</TD>
</TR>
<TR>
<TD>
	Wiederholung des Passwortes: 
</TD>
<TD>
	<INPUT NAME="password2" SIZE="20" VALUE"" TYPE="password">
</TD>
</TR>
<TR>
<TD>
&nbsp;
</TD>
<TD>
	<INPUT NAME="abschicken" VALUE="Jetzt Anmelden" TYPE="submit">
</TD>
</TR>
</TABLE>
<INPUT  NAME="action" VALUE="anmelden" TYPE="hidden">
</FORM>
</DIV>
<?
}
else if ( $action == "anmelden" )
{
?>
<DIV ID="content">
<?
	$passwort = $_POST['password'] ;
	if ( strlen( $passwort ) < 4 ) 
	{
		$fehler = "Dein Passwort muss mindestens 4 Zeichen enthalten";
	}
	else if ( $_POST['password'] != $_POST['password2'] ) 
	{
	        $fehler = "Dein Passwort stimmt nicht mit der Wiederholung des Passwortes &uuml;berein!";
	}
	else 
	{
		$benutzername = $_POST['benutzername'] ;
		$benutzername = mysql_real_escape_string( $benutzername ) ;
		if ( strlen( $benutzername ) < 4 ) 
		{
			$fehler = "Der Benutzername muss mindestens 4 Zeichen enthalten.";
		}
		else
		{
			$sql = "SELECT COUNT(*) as zaehler FROM `account` WHERE `username` like '".strtoupper($benutzername)."'";
			$result = mysql_query($sql) or die( mysql_error() );
			if (mysql_num_rows($result) > 0)
			{
				if ( $row = mysql_fetch_array($result) )
				{
					if ( $row['zaehler'] > 0 ) 
						$fehler = "Der Benutzername ist leider schon vergeben.";
				}
			}
		}
		if ( ! isset( $fehler ) ) 
		{
			$email = $_POST['email'] ;
			if( ! ereg("([[:alnum:].-]+)(@[[:alnum:].-]+.+)", $email) )
			{
				$fehler = "Du hast eine ung&uuml;ltige E-Mail Adresse eingegeben.";
			}
			else
			{
				$email = mysql_real_escape_string($email);
				$sql = "SELECT COUNT(*) as zaehler FROM `account` WHERE `username` like '".$benutzername."'";
				$result = mysql_query($sql) or die( mysql_error() );
				if (mysql_num_rows($result) > 0)
				{
					if ( $row = mysql_fetch_array($result) )
					{
						if ( $row['zaehler'] > 0 ) 
							$fehler = "Die E-Mail-Adresse wird bereits verwendet..";
					}
				}
			}
		}
		if ( ! isset ( $fehler ) )
		{
			$passcoded = sha1(strtoupper($benutzername.":".strtoupper($passwort))) ;
			$ip=$_SERVER['REMOTE_ADDR'];
			$datum = date("Y-m-d H:i:s",time());
			$sql = "INSERT INTO `account` ";
			$sql .= " ( `username`, `sha_pass_hash`, `email`, `joindate`, `last_ip` ) VALUES ( ";
			$sql .= "'".strtoupper($benutzername)."', ";
			$sql .= "'".$passcoded."', ";
			$sql .= "'".$email."', ";
			$sql .= "'".$datum."', ";
			$sql .= "'".$ip."' )";
			$result = mysql_query($sql) or die( mysql_error() );
?>
	<p>Gl&uuml;ckwunsch! Dein neuer Account wurde gerade angelegt. Du kannst jetzt spielen.</p>
<?
		}
	}
	if ( isset ( $fehler ) ) 
	{
?>
	<p>Es ist ein Fehler bei der Anmeldung aufgetreten.</p>
<?	
		echo "<p>".$fehler."</p>"."\n" ;
	}
?>
</DIV>
<?
}
}
else
{
?>
<DIV ID="content">
	<p>Du bist bereits eingeloggt!</p>
</DIV>
<?
}
include "footer.php";
?>
Return current item: PHP OpenTailorShop