Hallo zusammen,
Auch Heute habe ich wieder eine Frage, die sich eigentlich sehr schnell beantworten lassen müsste:
Ich habe 2 Files: login.php und register.php, die beide if($_POST['login/register']) beinhalten und danach die einzelnen Fälle (Passwort nicht eingegeben, falsches Passwort, kein Benutzername etc.) abklären.
So nun will ich diese beide Dateien in mein index.php einbinden, welcher nach dem Drücken auf den submit Button sich selbst mit einem POST aufruft. Doch wenn ich nach dem body die dateien einbinden will, gibt es einen Server Error. Wenn ich beide Dateien zusammenfüge (Was ich der Übersicht halter nicht möchte) funktioniert alles einwandfrei.
Gibt es dafür vielleicht eine Lösung?
Funktioniert auch nicht:
Login.php
Register.php
Auch Heute habe ich wieder eine Frage, die sich eigentlich sehr schnell beantworten lassen müsste:
Ich habe 2 Files: login.php und register.php, die beide if($_POST['login/register']) beinhalten und danach die einzelnen Fälle (Passwort nicht eingegeben, falsches Passwort, kein Benutzername etc.) abklären.
So nun will ich diese beide Dateien in mein index.php einbinden, welcher nach dem Drücken auf den submit Button sich selbst mit einem POST aufruft. Doch wenn ich nach dem body die dateien einbinden will, gibt es einen Server Error. Wenn ich beide Dateien zusammenfüge (Was ich der Übersicht halter nicht möchte) funktioniert alles einwandfrei.
Gibt es dafür vielleicht eine Lösung?
PHP:
</body>
<?php
// Einbindung der Login- & Registrierungsdatei
include("src/login.php")
include("src/register.php")
?>
</html>
Funktioniert auch nicht:
PHP:
</body>
<?php
// Einbindung der Login- & Registrierungsdatei
require_once("src/login.php")
require_once("src/register.php")
?>
</html>
Login.php
PHP:
<?php
if($_POST['login'])
{
// Variabel zur Überprüfung der Übereinstimmung zwischen dem eingegebenen Benutzernamen und Passwort
$user = mysql_fetch_array(mysql_query("select * from users where username = '".mysql_real_escape_string($_POST['username'])."' and password = password('".mysql_real_escape_string($_POST['password'])."')"));
// Überprüfung, ob ein Benutzername eingegeben wurde
if(!$_POST['username'])
{
echo "<script>document.getElementById('no_username').style.visibility = 'visible'</script>";
}
// Überprüfung, ob ein Passwort eingegeben wurde
else if(!$_POST['password'])
{
echo "<script>document.getElementById('no_password').style.visibility = 'visible'</script>";
}
// Überprüfung, ob der Benutzername mit dem Passwort übereinstimmt
else if(!$user)
{
echo "<script>document.getElementById('no_match').style.visibility = 'visible'</script>";
}
// Setzt die Session mit dem entsprechenden Benutzernamen und leitet den Benutzer zu game.php weiter
else
{
$_SESSION['username'] = $user['username'];
echo "<script> var weitergeleitet = \"game.php\"; function weiterleitung() {window.location = weitergeleitet ;} setTimeout(\"weiterleitung()\", 0);</script> ";
}
}
?>
Register.php
PHP:
if($_POST['register'])
{
// Variabeln zur Überprüfung ob der Benutzername oder die E-Mail Adresse schon vergeben ist
$usernames = mysql_fetch_array(mysql_query("select * from users where username = '".mysql_real_escape_string($_POST['username'])."'"));
$emails = mysql_fetch_array(mysql_query("select * from users where email = '".mysql_real_escape_string($_POST['email'])."'"));
// Überprüfung ob ein Benutzername eingegeben wurde
if(!$_POST['username'])
{
echo "<script>document.getElementById('no_username').style.visibility = 'visible'</script>";
}
// Überprüfung ob der Benutzername aus gültigen Zeichen besteht
else if(!preg_match('/^[a-zA-Z0-9-_.*äöü]+$/i', $_POST['username']))
{
echo "<script>document.getElementById('invalid_username').style.visibility = 'visible'</script>";
}
// Überprüfung ob der Benutzername länger als 3 und kürzer als 15 Zeichen lang ist
else if(strlen($_POST['username']) < 2 or strlen($_POST['username']) > 20)
{
echo "<script>document.getElementById('invalid_username_length').style.visibility = 'visible'</script>";
}
// Überprüfung ob der Benutzername schon vergeben ist
else if($usernames['user_id'])
{
echo "<script>document.getElementById('username_in_use').style.visibility = 'visible'</script>";
}
// Überprüfung ob eine E-Mail eingegeben wurde
else if(!$_POST['email'])
{
echo "<script>document.getElementById('no_email').style.visibility = 'visible'</script>";
}
//Überprüfung ob die E-Mail Adresse ein @ enthält
else if(!preg_match("/@/",$_POST['email']))
{
echo "<script>document.getElementById('invalid_mail').style.visibility = 'visible'</script>";
}
// Überprüfung ob die E-Mail Adresse bereits verwendet wird
else if($emails['user_id'])
{
echo "<script>document.getElementById('email_in_use').style.visibility = 'visible'</script>";
}
// Überprüfung ob die Regeln und AGB akzeptiert wurden
else if (!$_POST['rules_agb'])
{
echo "<script>document.getElementById('no_agb').style.visibility = 'visible'</script>";
}
// Falls keine Fehler gemacht wurden, wird die Registrierung getätigt
else
{
// Generierung eines zufälligen Passworts
$create_pw = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$passwort = substr( str_shuffle( $create_pw ), 0, 8 );
// Abfrage der Grundsettings aus der Datenbank
$settings = mysql_fetch_array(mysql_query("select * from settings where setting_id = '1'"));
// Variabel für das Registrierungsdatum
$time = time();
// Einfügen der Userdaten in die Datenbank
mysql_query("insert into users SET
username = '" . mysql_real_escape_string($_POST['username']) . "',
email = '" . mysql_real_escape_string($_POST['email']) . "',
password = password('" . mysql_real_escape_string($passwort) . "'),
registered = '" . mysql_real_escape_string($time) . "',
activated = '0',
high = '0',
elevator_speed = '" . mysql_real_escape_string($settings['elevator_speed']) ."'");
mysql_query("insert into money SET
username = '" . mysql_real_escape_string($_POST['username']) . "',
money = '" . mysql_real_escape_string($settings['start_money']) ."',
floor_costs = '" . mysql_real_escape_string($settings['floor_costs']) ."'");
// Sendet eine Mail mit dem generierten Passwort an die angegebene Mailadesse
ZENSIERT
// Gibt die Meldung aus, dass die Registrierung erfolgreich war
echo "<script>document.getElementById('success').style.visibility = 'visible'</script>";
}
}
?>
Zuletzt bearbeitet: