MolLy
27.06.2010, 21:31
Guten Abend,
ich bin ein totaler Neulig in PHP und habe nun versucht mir einen kleinen Loginscript zu erstellen...
Jetzt wollte ich mal fragen, was ihr davon haltet, bzw. welche Tipps ihr mir geben könnt, um mich zu verbessern.
Hier mal die einzelnen Dateien...
Der "Loginbereich"
<?php
session_start();
error_reporting(0);
include("inc/config.php");
include("loginformular.html");
if($_POST['send'] == "1")
{
if(isset($_POST['loginnutzername']) && isset( $_POST['loginkennwort']))
{
$username = $_POST['loginnutzername'];
$kennwort = $_POST['loginkennwort'];
}
if(empty($_POST['loginnutzername']) || empty($_POST['loginkennwort']))
{
print("Bitte geben Sie Ihren Nutzernamen/Kennwort ein!");
exit();
}
$selectuser = mysql_query("SELECT username, passwort FROM user WHERE username LIKE '$username' LIMIT 1");
$fetch = mysql_fetch_object($selectuser);
if($fetch->passwort == $kennwort)
{
print("Herzlich Willkommen " . ucfirst($username) . ". <br /> Sie haben sich erfolgreich eingeloggt<br /> <a href=\"access.php?name=$username\">Memberbereich</a>");
$_SESSION['access'] = TRUE;
}
else
{
print("Ihre eingaben sind Falsch!");
}
}
?>
Die Registrierung:
<?php
error_reporting(0);
include("inc/config.php");
include("registerformular.html");
if($_POST['send'] == "1")
{
if(empty($_POST['nutzername']))
{
print("<br />Bitte geben Sie einen Benutzernamen ein!<br />");
exit();
}
else
{
$nutzername = htmlspecialchars($_POST['nutzername']);
}
if(strlen($_REQUEST['kennwort']) < 8){
print'Ihr Passwort muss mehr als 8 Zeichen haben!<br />';
exit();
}
if(empty($_POST['kennwort']))
{
print("<br />Bitte geben Sie einen Kennwort ein!<br />");
exit();
}
else
{
$kennwort = htmlspecialchars($_POST['kennwort']);
}
if(empty($_POST['kennwort2']))
{
print("<br />Bitte wiederholen Sie Ihr Passwort<br />");
exit();
}
else
{
$kennwort2 = htmlspecialchars($_POST['kennwort2']);
}
if(empty($_POST['email']))
{
print("<br />Bitte geben Sie einen E-Mail ein!<br />");
exit();
}
else
{
$mail = htmlspecialchars($_POST['email']);
}
if($_POST['kennwort'] != $_POST['kennwort2'])
{
print("<br />Die beiden Passwoerter stimmen nicht ueberein!!<br />");
exit();
}
$checkmail = mysql_query("SELECT email FROM user WHERE email LIKE '$mail' LIMIT 1");
$checkmailrow = mysql_num_rows($checkmail);
if($checkmailrow == 1)
{
print("Die eingegebene E-Mail ist leider schon vorhanden!");
exit();
}
$checkuser = mysql_query("SELECT username FROM user WHERE username LIKE '$nutzername' LIMIT 1");
$checkuserrow = mysql_num_rows($checkuser);
if($checkuserrow == 1)
{
print("Der eingegebene Benutzername ist leider schon vorhanden!");
exit();
}
elseif($iplog == 1)
{
$ip = $_SERVER['REMOTE_ADDR'];
$adduser = mysql_query("INSERT INTO user (username, passwort, email, regdate, aktiv, code,ip) VALUES ('$nutzername','$kennwort','$mail','$date','NEIN', '$rand','$ip')");
mail($mail, $subject, $url. "/aktiv.php?name=".$nutzername."&code=.$code");
print("<br /> Ihr Benutzeraccount wurde erfolgreich hinzugefügt. <br />Bitte überprüfen Sie Ihr Postfach, um Ihren Account zu aktivieren!");
}
else
{
$adduser = mysql_query("INSERT INTO user (username, passwort, email, regdate, aktiv, code) VALUES ('$nutzername','$kennwort','$mail','$date','NEIN', '$rand')");
mail($mail, $subject, $url. "/aktiv.php?name=".$nutzername."&code=.$code");
print("<br /> Ihr Benutzeraccount wurde erfolgreich hinzugefügt. <br />Bitte überprüfen Sie Ihr Postfach, um Ihren Account zu aktivieren!");
}
}
?>
Die E-Mail Aktivierung:
<?php
include("inc/config.php");
$name= $_REQUEST['name'];
$code = $_REQUEST['code'];
$selectcode = mysql_query("SELECT * FROM user WHERE username LIKE '$name' AND code LIKE '$code' LIMIT 1")
or die(mysql_error());
$fetchobject = mysql_fetch_object($selectcode) or die(mysql_error());
if($fetchobject -> code == $code)
{
mysql_query("UPDATE user SET aktiv = 'JA' WHERE username LIKE '$name' AND code LIKE '$code' ") or die(mysql_error());
print("Sie wurden erfolgreich aktiviert!<br /> Loggen Sie sich <a href=\"login.php\">HIER</a> ein!");
}
?>
Und die allg. COnfig:
<?php
$dbhost = "localhost";
$dbuser = "localhost";
$dbpasswort = "localhost";
$db = "login";
$dbconnect= mysql_connect($dbhost, $dbuser, $dbpasswort, $db) or
die("Es gab ein Problem mit der Datenbankverbindung!" . mysql_error());
$sql = mysql_select_db($db, $dbconnect);
$subject = "Aktivierung";
$date = date('d.m.y');
$rand = rand(1, 999999);
$url = "////";
$iplog = "0";
?>
Vielen Dank!
ich bin ein totaler Neulig in PHP und habe nun versucht mir einen kleinen Loginscript zu erstellen...
Jetzt wollte ich mal fragen, was ihr davon haltet, bzw. welche Tipps ihr mir geben könnt, um mich zu verbessern.
Hier mal die einzelnen Dateien...
Der "Loginbereich"
<?php
session_start();
error_reporting(0);
include("inc/config.php");
include("loginformular.html");
if($_POST['send'] == "1")
{
if(isset($_POST['loginnutzername']) && isset( $_POST['loginkennwort']))
{
$username = $_POST['loginnutzername'];
$kennwort = $_POST['loginkennwort'];
}
if(empty($_POST['loginnutzername']) || empty($_POST['loginkennwort']))
{
print("Bitte geben Sie Ihren Nutzernamen/Kennwort ein!");
exit();
}
$selectuser = mysql_query("SELECT username, passwort FROM user WHERE username LIKE '$username' LIMIT 1");
$fetch = mysql_fetch_object($selectuser);
if($fetch->passwort == $kennwort)
{
print("Herzlich Willkommen " . ucfirst($username) . ". <br /> Sie haben sich erfolgreich eingeloggt<br /> <a href=\"access.php?name=$username\">Memberbereich</a>");
$_SESSION['access'] = TRUE;
}
else
{
print("Ihre eingaben sind Falsch!");
}
}
?>
Die Registrierung:
<?php
error_reporting(0);
include("inc/config.php");
include("registerformular.html");
if($_POST['send'] == "1")
{
if(empty($_POST['nutzername']))
{
print("<br />Bitte geben Sie einen Benutzernamen ein!<br />");
exit();
}
else
{
$nutzername = htmlspecialchars($_POST['nutzername']);
}
if(strlen($_REQUEST['kennwort']) < 8){
print'Ihr Passwort muss mehr als 8 Zeichen haben!<br />';
exit();
}
if(empty($_POST['kennwort']))
{
print("<br />Bitte geben Sie einen Kennwort ein!<br />");
exit();
}
else
{
$kennwort = htmlspecialchars($_POST['kennwort']);
}
if(empty($_POST['kennwort2']))
{
print("<br />Bitte wiederholen Sie Ihr Passwort<br />");
exit();
}
else
{
$kennwort2 = htmlspecialchars($_POST['kennwort2']);
}
if(empty($_POST['email']))
{
print("<br />Bitte geben Sie einen E-Mail ein!<br />");
exit();
}
else
{
$mail = htmlspecialchars($_POST['email']);
}
if($_POST['kennwort'] != $_POST['kennwort2'])
{
print("<br />Die beiden Passwoerter stimmen nicht ueberein!!<br />");
exit();
}
$checkmail = mysql_query("SELECT email FROM user WHERE email LIKE '$mail' LIMIT 1");
$checkmailrow = mysql_num_rows($checkmail);
if($checkmailrow == 1)
{
print("Die eingegebene E-Mail ist leider schon vorhanden!");
exit();
}
$checkuser = mysql_query("SELECT username FROM user WHERE username LIKE '$nutzername' LIMIT 1");
$checkuserrow = mysql_num_rows($checkuser);
if($checkuserrow == 1)
{
print("Der eingegebene Benutzername ist leider schon vorhanden!");
exit();
}
elseif($iplog == 1)
{
$ip = $_SERVER['REMOTE_ADDR'];
$adduser = mysql_query("INSERT INTO user (username, passwort, email, regdate, aktiv, code,ip) VALUES ('$nutzername','$kennwort','$mail','$date','NEIN', '$rand','$ip')");
mail($mail, $subject, $url. "/aktiv.php?name=".$nutzername."&code=.$code");
print("<br /> Ihr Benutzeraccount wurde erfolgreich hinzugefügt. <br />Bitte überprüfen Sie Ihr Postfach, um Ihren Account zu aktivieren!");
}
else
{
$adduser = mysql_query("INSERT INTO user (username, passwort, email, regdate, aktiv, code) VALUES ('$nutzername','$kennwort','$mail','$date','NEIN', '$rand')");
mail($mail, $subject, $url. "/aktiv.php?name=".$nutzername."&code=.$code");
print("<br /> Ihr Benutzeraccount wurde erfolgreich hinzugefügt. <br />Bitte überprüfen Sie Ihr Postfach, um Ihren Account zu aktivieren!");
}
}
?>
Die E-Mail Aktivierung:
<?php
include("inc/config.php");
$name= $_REQUEST['name'];
$code = $_REQUEST['code'];
$selectcode = mysql_query("SELECT * FROM user WHERE username LIKE '$name' AND code LIKE '$code' LIMIT 1")
or die(mysql_error());
$fetchobject = mysql_fetch_object($selectcode) or die(mysql_error());
if($fetchobject -> code == $code)
{
mysql_query("UPDATE user SET aktiv = 'JA' WHERE username LIKE '$name' AND code LIKE '$code' ") or die(mysql_error());
print("Sie wurden erfolgreich aktiviert!<br /> Loggen Sie sich <a href=\"login.php\">HIER</a> ein!");
}
?>
Und die allg. COnfig:
<?php
$dbhost = "localhost";
$dbuser = "localhost";
$dbpasswort = "localhost";
$db = "login";
$dbconnect= mysql_connect($dbhost, $dbuser, $dbpasswort, $db) or
die("Es gab ein Problem mit der Datenbankverbindung!" . mysql_error());
$sql = mysql_select_db($db, $dbconnect);
$subject = "Aktivierung";
$date = date('d.m.y');
$rand = rand(1, 999999);
$url = "////";
$iplog = "0";
?>
Vielen Dank!