|
You last visited: Today at 17:27
Advertisement
PHP // Log-In System
Discussion on PHP // Log-In System within the Coding Tutorials forum part of the General Coding category.
10/15/2011, 14:17
|
#1
|
elite*gold: 1792
Join Date: Aug 2010
Posts: 3,665
Received Thanks: 512
|
PHP // Log-In System
Moin , Elitepvpers
Heute will ich euch zeigen, wie man in PHP einen ganz einfachen Login Erstellt.
Hoffe es wird euch gefallen & bzw hoffentlich hilft es euch.
~Vorwort~
Dises Tutorial Stammt von mir , bitte respektiert es & bewertet es! - Wenn ich gute bewertungen bekomme werde ich Demnächst mehr veröffentlichen! - Danke hoffe es bringt euch ein schritt weiter! 
Schritt 1: Neuer Account
Zuerst möchten wir mit dem Script einen neuen Account anlegen, damit sich der User evt. später von alleine Registieren kann.
Dazu brauchen wir ein ganz normales HTML-Formular mit 3 Feldern.
Einmal ein Feld wo man seinen Benutzernamen (Name: username) eingibt, dann ein Feld wo man sein Passwort eingibt (Name: passwort) und noch ein Feld, wo man sein Passwort bestätigt (Name: passwort2).
Das sieht ca. so aus:
Code:
<form action="eintragen.php" method="post">
Dein Username:<br>
<input type="text" size="24" maxlength="50"
name="username"><br><br>
Dein Passwort:<br>
<input type="password" size="24" maxlength="50"
name="passwort"><br>
Passwort wiederholen:<br>
<input type="password" size="24" maxlength="50"
name="passwort2"><br>
<input type="submit" value="Abschicken">
</form>
Jetzt kommen wir zum intressanten Teil, dem PHP Script. Dieser Script soll den Benutzername und das Passwort nur speichern.
Zuerst fragen wir die eingegebenden Daten ab:
Code:
<?php
$username = $_POST["username"];
$password = $_POST["passwort"];
$password2 = $_POST["passwort2"];
?>
Danach überprüfen wir zuerst, ob überhaupt die beiden Passwörter identisch sind, dafür benutzen wir einfach eine if-Anweisung.
Natürlich wollen wir auch verhindern, das ein Benutzername doppelt vorkommt, sonst gibt es später beim Login Probleme, deswegen erstellen wir ein leeren Array.
Zum schluss verschlüsseln wir noch das Passwort mit der Funktion md5.
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
}
else
{
echo "Die Passwörter waren nicht identisch
<br><a href=\"eintragen.html\">zurück</a>";
}
?>
Jetzt wollen wir ja nachgucken, ob es den Benutzernamen schon gibt, deswegen öffnen wir die Datei, in der die Benutzernamen und Passwörter gespeichert werden.
Diese Befehle müssen jetzt natürlich auch noch alle in den if Teil.
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
}
?>
Wir öffnen jetzt die Datei, und lesen sie immer Stück für Stück aus. Dabei legen wir nur den Benutzernamen in das Array $user_vorhanden ab.
Wenn in dem Array alle Benutzernamen gespeichert wurden, wird die Datei noch geschlossen.
Jetzt haben wir alle Benutzernamen in dem Array $user_vorhanden, aber jetzt wollen wir gucken, on der Benutzername schon vorhanden ist. Dafür können wir doch ganz einfach in_array benutzen.
Dieser Befehl muss auch wieder in den ersten if-Teil, denn wir wollen die Befehle ja nur ausführen lassen, wenn die Passwörter identisch waren.
Die if-Anweisung sieht jetzt so aus:
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
if (in_array($username,$user_vorhanden))
{
echo "Username schon vorhanden <br>
<a href=\"eintragen.html\">zurück</a>";
}
}
?>
Mit in_array schauen wir ob $username, dieser Wert stammt aus dem Formular, schon in dem Array gespeichert wurden, wenn dies nicht der Fall ist, brauchen wir else..
Diese Anweisungen stehen immer noch im ersten if Teil.
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
if (in_array($username,$user_vorhanden))
{
echo "Username schon vorhanden <br>
<a href=\"eintragen.html\">zurück</a>";
}
else
{
$eintrag ="$username|$passwort";
$userdatei = fopen ("user.txt","a");
fwrite($userdatei, "$eintrag\n");
fclose($userdatei);
echo "$username, deine Anmeldung war
erfolgreich<br>
<a href=\"login.html\">zum Login</a>";
}
}
else
{
echo "Die Passwörter waren nicht identisch <br>
<a href=\"eintragen.html\">zurück</a>";
}
?>
Jetzt speichern wir den Benutzername und das verschlüsselte Passwort in der Text-Datei user.txt. Wenn Ihr diesen Script benutzt, sollte keiner den Namen der Datei wissen, damit man Useraccounts nicht so leicht hacken kann.
Der fertige Script sieht dann so aus (eintragen.php):
Code:
<?php
$username = $_POST["username"];
$password = $_POST["passwort"];
$password2 = $_POST["passwort2"];
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
if (in_array($username,$user_vorhanden))
{
echo "Username schon vorhanden <br>
<a href=\"eintragen.html\">zurück</a>";
}
else
{
$eintrag ="$username|$passwort";
$userdatei = fopen ("user.txt","a");
fwrite($userdatei, "$eintrag\n");
fclose($userdatei);
echo "$username, deine Anmeldung war erfolgreich
<br><a href=\"login.html\">zum Login</a>";
}
}
?>
Schritt 2: Login
Jetzt kommen wir zum Login.
Dafür brauchen wir natürlich wieder ein Formular mit zwei Feldern (Username und Passwort mit den Namen: username und password).
Ca so:
Code:
<form action="login.php" method="post">
Dein Username:<br>
<input type="text" size="24" maxlength="50"
name="username"><br><br>
Dein Passwort:<br>
<input type="password" size="24" maxlength="50"
name="password"><br>
<input type="submit" value="Login">
</form>
Das Formular ist weiter nicht intressant, aber der PHP Script. Wie immer fragen wir zuerst die beiden Felder ab, und verschlüsseln das Passwort mit der md5-Funktion.
Außerdem geben wir der Variable $log noch den Inhalt 0, warum werdet Ihr später sehen.
Code:
<?php
$username = $_POST["username"];
$passwort = $_POST["password"];
$passwort = md5($passwort);
$log = 0;
?>
Im nächsten Schritt öffnen wir die Datei (user.txt) und lesen diese immer nach und nach.
Dabei trennen wir wieder den Benutzername von dem Passwort, damit wir beides überprüfen können.
Dann schauen wir, ob die Eingaben aus dem Formular mit denen aus der Datei übereinstimmen.
Wenn dies der Fall ist, wird der Variable $log der Inhalt 1 zugeordnet.
Code:
<?php
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
if ($userdata[0]==$username and
$passwort==trim($userdata[1]))
{
echo "Hallo $username";
$log = 1;
}
}
fclose($userdatei);
?>
Aber warum steht da $passwort==trim($userdata[1])?
Ganz einfach, mit trim entfernen wir am Anfang und am Ende des Passwortes überflüssige Zeichen, z.B. Leerzeichen und auch ein Zeilenumbruch.
Wir müssen dies machen, weil die Passwörter immer mit einem Zeilenumbruch am Ende gespeichert werden.
Würden wir dies nicht machen, würde der Script nicht funktionieren, weil ein Wort mit einem Zeilenumbruch am Ende nicht das gleiche Wort ist, als wenn es keinen Zeilenumbruch hat.
Wenn jetzt das Passwort und der Benutzername richtig ist, gelangt der User in den Userbereich (hier: Hallo $username).
Wenn kein Benutzername bzw. Passwort passt, dann hat die Variable $log immer noch den Inhalt 0.
Das können wir wiederrum mit einer if-Anweisung überprüfen.
Code:
<?php
if ($log==0)
{
echo "Zugriff verweigert";
}
?>
Das wars auch schon.
Am Ende sieht die Datei so aus:
Code:
<?php
$username = $_POST["username"];
$passwort = $_POST["password"];
$passwort = md5($passwort);
$log = 0;
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
if ($userdata[0]==$username and
$passwort==trim($userdata[1]))
{
echo "Hallo $username";
$log = 1;
}
}
fclose($userdatei);
if ($log==0)
{
echo "Zugriff verweigert";
}
?>
Noch ein Tipp:
In der Datei, in der die Passwörter gespeichert werden, die sollte immer geheim bleiben.
Thanks Muss nicht sein.
Weitere quellen : clanwissen
|
|
|
10/15/2011, 14:19
|
#2
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,406
Received Thanks: 2,024
|
ganz ok, allerdings ist eine Datenbank um vieles Sicherer bei einem Login. Auch die Registrierung wird so erleichtert.
Bei deiner Methode kann man ganz einfach  machen und man hat alles was man braucht
|
|
|
10/15/2011, 14:20
|
#3
|
elite*gold: 0
Join Date: Oct 2011
Posts: 106
Received Thanks: 56
|
Quote:
Originally Posted by DonCorloene
Moin , Elitepvpers
Heute will ich euch zeigen, wie man in PHP einen ganz einfachen Login Erstellt.
Hoffe es wird euch gefallen & bzw hoffentlich hilft es euch.
~Vorwort~
Dises Tutorial Stammt von mir , bitte respektiert es & bewertet es! - Wenn ich gute bewertungen bekomme werde ich Demnächst mehr veröffentlichen! - Danke hoffe es bringt euch ein schritt weiter! 
Schritt 1: Neuer Account
Zuerst möchten wir mit dem Script einen neuen Account anlegen, damit sich der User evt. später von alleine Registieren kann.
Dazu brauchen wir ein ganz normales HTML-Formular mit 3 Feldern.
Einmal ein Feld wo man seinen Benutzernamen (Name: username) eingibt, dann ein Feld wo man sein Passwort eingibt (Name: passwort) und noch ein Feld, wo man sein Passwort bestätigt (Name: passwort2).
Das sieht ca. so aus:
Code:
<form action="eintragen.php" method="post">
Dein Username:<br>
<input type="text" size="24" maxlength="50"
name="username"><br><br>
Dein Passwort:<br>
<input type="password" size="24" maxlength="50"
name="passwort"><br>
Passwort wiederholen:<br>
<input type="password" size="24" maxlength="50"
name="passwort2"><br>
<input type="submit" value="Abschicken">
</form>
Jetzt kommen wir zum intressanten Teil, dem PHP Script. Dieser Script soll den Benutzername und das Passwort nur speichern.
Zuerst fragen wir die eingegebenden Daten ab:
Code:
<?php
$username = $_POST["username"];
$password = $_POST["passwort"];
$password2 = $_POST["passwort2"];
?>
Danach überprüfen wir zuerst, ob überhaupt die beiden Passwörter identisch sind, dafür benutzen wir einfach eine if-Anweisung.
Natürlich wollen wir auch verhindern, das ein Benutzername doppelt vorkommt, sonst gibt es später beim Login Probleme, deswegen erstellen wir ein leeren Array.
Zum schluss verschlüsseln wir noch das Passwort mit der Funktion md5.
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
}
else
{
echo "Die Passwörter waren nicht identisch
<br><a href=\"eintragen.html\">zurück</a>";
}
?>
Jetzt wollen wir ja nachgucken, ob es den Benutzernamen schon gibt, deswegen öffnen wir die Datei, in der die Benutzernamen und Passwörter gespeichert werden.
Diese Befehle müssen jetzt natürlich auch noch alle in den if Teil.
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
}
?>
Wir öffnen jetzt die Datei, und lesen sie immer Stück für Stück aus. Dabei legen wir nur den Benutzernamen in das Array $user_vorhanden ab.
Wenn in dem Array alle Benutzernamen gespeichert wurden, wird die Datei noch geschlossen.
Jetzt haben wir alle Benutzernamen in dem Array $user_vorhanden, aber jetzt wollen wir gucken, on der Benutzername schon vorhanden ist. Dafür können wir doch ganz einfach in_array benutzen.
Dieser Befehl muss auch wieder in den ersten if-Teil, denn wir wollen die Befehle ja nur ausführen lassen, wenn die Passwörter identisch waren.
Die if-Anweisung sieht jetzt so aus:
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
if (in_array($username,$user_vorhanden))
{
echo "Username schon vorhanden <br>
<a href=\"eintragen.html\">zurück</a>";
}
}
?>
Mit in_array schauen wir ob $username, dieser Wert stammt aus dem Formular, schon in dem Array gespeichert wurden, wenn dies nicht der Fall ist, brauchen wir else..
Diese Anweisungen stehen immer noch im ersten if Teil.
Code:
<?php
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
if (in_array($username,$user_vorhanden))
{
echo "Username schon vorhanden <br>
<a href=\"eintragen.html\">zurück</a>";
}
else
{
$eintrag ="$username|$passwort";
$userdatei = fopen ("user.txt","a");
fwrite($userdatei, "$eintrag\n");
fclose($userdatei);
echo "$username, deine Anmeldung war
erfolgreich<br>
<a href=\"login.html\">zum Login</a>";
}
}
else
{
echo "Die Passwörter waren nicht identisch <br>
<a href=\"eintragen.html\">zurück</a>";
}
?>
Jetzt speichern wir den Benutzername und das verschlüsselte Passwort in der Text-Datei user.txt. Wenn Ihr diesen Script benutzt, sollte keiner den Namen der Datei wissen, damit man Useraccounts nicht so leicht hacken kann.
Der fertige Script sieht dann so aus (eintragen.php):
Code:
<?php
$username = $_POST["username"];
$password = $_POST["passwort"];
$password2 = $_POST["passwort2"];
if ($password == $password2)
{
$user_vorhanden = array();
$passwort = md5($password);
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
array_push ($user_vorhanden,$userdata[0]);
}
fclose($userdatei);
if (in_array($username,$user_vorhanden))
{
echo "Username schon vorhanden <br>
<a href=\"eintragen.html\">zurück</a>";
}
else
{
$eintrag ="$username|$passwort";
$userdatei = fopen ("user.txt","a");
fwrite($userdatei, "$eintrag\n");
fclose($userdatei);
echo "$username, deine Anmeldung war erfolgreich
<br><a href=\"login.html\">zum Login</a>";
}
}
?>
Schritt 2: Login
Jetzt kommen wir zum Login.
Dafür brauchen wir natürlich wieder ein Formular mit zwei Feldern (Username und Passwort mit den Namen: username und password).
Ca so:
Code:
<form action="login.php" method="post">
Dein Username:<br>
<input type="text" size="24" maxlength="50"
name="username"><br><br>
Dein Passwort:<br>
<input type="password" size="24" maxlength="50"
name="password"><br>
<input type="submit" value="Login">
</form>
Das Formular ist weiter nicht intressant, aber der PHP Script. Wie immer fragen wir zuerst die beiden Felder ab, und verschlüsseln das Passwort mit der md5-Funktion.
Außerdem geben wir der Variable $log noch den Inhalt 0, warum werdet Ihr später sehen.
Code:
<?php
$username = $_POST["username"];
$passwort = $_POST["password"];
$passwort = md5($passwort);
$log = 0;
?>
Im nächsten Schritt öffnen wir die Datei (user.txt) und lesen diese immer nach und nach.
Dabei trennen wir wieder den Benutzername von dem Passwort, damit wir beides überprüfen können.
Dann schauen wir, ob die Eingaben aus dem Formular mit denen aus der Datei übereinstimmen.
Wenn dies der Fall ist, wird der Variable $log der Inhalt 1 zugeordnet.
Code:
<?php
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
if ($userdata[0]==$username and
$passwort==trim($userdata[1]))
{
echo "Hallo $username";
$log = 1;
}
}
fclose($userdatei);
?>
Aber warum steht da $passwort==trim($userdata[1])?
Ganz einfach, mit trim entfernen wir am Anfang und am Ende des Passwortes überflüssige Zeichen, z.B. Leerzeichen und auch ein Zeilenumbruch.
Wir müssen dies machen, weil die Passwörter immer mit einem Zeilenumbruch am Ende gespeichert werden.
Würden wir dies nicht machen, würde der Script nicht funktionieren, weil ein Wort mit einem Zeilenumbruch am Ende nicht das gleiche Wort ist, als wenn es keinen Zeilenumbruch hat.
Wenn jetzt das Passwort und der Benutzername richtig ist, gelangt der User in den Userbereich (hier: Hallo $username).
Wenn kein Benutzername bzw. Passwort passt, dann hat die Variable $log immer noch den Inhalt 0.
Das können wir wiederrum mit einer if-Anweisung überprüfen.
Code:
<?php
if ($log==0)
{
echo "Zugriff verweigert";
}
?>
Das wars auch schon.
Am Ende sieht die Datei so aus:
Code:
<?php
$username = $_POST["username"];
$passwort = $_POST["password"];
$passwort = md5($passwort);
$log = 0;
$userdatei = fopen ("user.txt","r");
while (!feof($userdatei))
{
$zeile = fgets($userdatei,500);
$userdata = explode("|", $zeile);
if ($userdata[0]==$username and
$passwort==trim($userdata[1]))
{
echo "Hallo $username";
$log = 1;
}
}
fclose($userdatei);
if ($log==0)
{
echo "Zugriff verweigert";
}
?>
Noch ein Tipp:
In der Datei, in der die Passwörter gespeichert werden, die sollte immer geheim bleiben.
Thanks Muss nicht sein.
Weitere quellen : clanwissen
|
Ein Lob an dich das du es so gut machst und das du dich auch für sowas interesiert bzw. es pub. machst!
Mfg Detores
|
|
|
10/15/2011, 14:21
|
#4
|
elite*gold: 1792
Join Date: Aug 2010
Posts: 3,665
Received Thanks: 512
|
Quote:
Originally Posted by NotEnoughForYou
ganz ok, allerdings ist eine Datenbank um vieles Sicherer bei einem Login. Auch die Registrierung wird so erleichtert.
Bei deiner Methode kann man ganz einfach  machen und man hat alles was man braucht 
|
Ja natürlich gibt es verschiedene Varianten  Danke
|
|
|
10/15/2011, 14:23
|
#5
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,406
Received Thanks: 2,024
|
Deine Variante würde ich nicht empfehlen, da sie extrem unsicher ist. Solange es im geschützen Bereich keine wichtigen Sachen gibt, kann man es verwenden
|
|
|
10/15/2011, 14:25
|
#6
|
elite*gold: 1792
Join Date: Aug 2010
Posts: 3,665
Received Thanks: 512
|
Quote:
Originally Posted by NotEnoughForYou
Deine Variante würde ich nicht empfehlen, da sie extrem unsicher ist. Solange es im geschützen Bereich keine wichtigen Sachen gibt, kann man es verwenden
|
Ja also nicht extrem unsicher aber es gibt natürlich sichere Varianten
Danke für die Feedbacks von dir , wenigstens einer der sich dankbar zeigt bzw sich dafür Intressiert.
|
|
|
10/16/2011, 20:03
|
#7
|
elite*gold: 58
Join Date: Jul 2011
Posts: 516
Received Thanks: 75
|
Sehr nett, ich denke du solltest es aber mit ner Datenbank umschreiben
|
|
|
10/16/2011, 20:45
|
#8
|
elite*gold: 6
Join Date: Mar 2010
Posts: 416
Received Thanks: 221
|
Dann würd ich die txt Datei ausserhalb vom webverzeichnis lassen, denn es gibt da so einen htacces Exploit
|
|
|
10/16/2011, 22:08
|
#9
|
elite*gold: 0
Join Date: Dec 2008
Posts: 1,304
Received Thanks: 485
|
1)
PHP Code:
if ($userdata[0]==$username and $passwort==trim($userdata[1])) { echo "Hallo $username"; $log = 1; } }
Du meinst wohl statt
echo "Hallo $username";
"Hallo" + $username
weiterhin wird das ganze ziemlich den Server beanspruchen, wenn du bei jeder Seite aufs neue die Datenbank beanspruchst - bei 1000 Anfragen pro Sekunde kommt es da schon zu lags ;D
|
|
|
10/17/2011, 08:59
|
#10
|
elite*gold: 0
Join Date: May 2008
Posts: 1,222
Received Thanks: 500
|
Quote:
Originally Posted by Reeek
1)
PHP Code:
if ($userdata[0]==$username and
$passwort==trim($userdata[1]))
{
echo "Hallo $username";
$log = 1;
}
}
Du meinst wohl statt
echo "Hallo $username";
"Hallo" + $username
weiterhin wird das ganze ziemlich den Server beanspruchen, wenn du bei jeder Seite aufs neue die Datenbank beanspruchst - bei 1000 Anfragen pro Sekunde kommt es da schon zu lags ;D
|
Wohl eher echo "Hallo" . $username; ...
Und wo siehst du hier bitte eine Datenbank? Hier wird nur eine .txt Datei verwendet.
|
|
|
10/17/2011, 14:23
|
#11
|
elite*gold: 0
Join Date: Dec 2008
Posts: 1,304
Received Thanks: 485
|
ich weiß dass man per . verbindet... das war kein Code sondern... Deutsch ;D
weiterhin wird das ganze per Textdokument noch deutlich mehr laggen...
|
|
|
10/17/2011, 14:54
|
#12
|
elite*gold: 120
Join Date: Aug 2010
Posts: 7,448
Received Thanks: 2,756
|
Quote:
Originally Posted by Lizzaran
Wohl eher echo "Hallo" . $username; ...
Und wo siehst du hier bitte eine Datenbank? Hier wird nur eine .txt Datei verwendet.
|
wat labascht du?
echo "text $variable"; wird genauso behandelt wie echo "text".$variable; und genauso wie echo "text", $variable;
außerdem ist das script nicht xss sicher! nacher wenn ich wieder heimkomm überarbeit ichs mal und editiers rein...
PS: die lösung mit ner textdatei ist so ziemlich die schlechteste überhaupt, sogar xml dokumente werden noch schneller eingelesen/verarbeitet, ne datenbank ist wohl das beste...
|
|
|
10/17/2011, 15:47
|
#13
|
elite*gold: 0
Join Date: Jun 2010
Posts: 3,406
Received Thanks: 2,024
|
sein Post war darauf bezogen, dass Reek gesagt hat Hallo + $username
|
|
|
10/17/2011, 17:39
|
#14
|
elite*gold: 120
Join Date: Aug 2010
Posts: 7,448
Received Thanks: 2,756
|
Quote:
Originally Posted by NotEnoughForYou
sein Post war darauf bezogen, dass Reek gesagt hat Hallo + $username
|
ups hab ich überlesen, macht aber nix ist trotzdem falsch, dann wurde der fehler halt von nem anderen user begangen, wayne?!?
naja wie auch immer:
- Die Verwendung von Textdateien ist:
- extrem lahm
- extrem unsicher
Die Verwendung von XML-Dokumenten ist:
- relativ flott
- genauso unsicher wie die Verwendung von Textdateien
Die Verwendung von Datenbanken ist:
- ziemlich flott
- ziemlich sicher
Also würde doch jeder vernünftig denkende Mensch zu der Lösung mit Datenbanken tendieren, oder?
Nebenbei: Absolut XSS (Cross Site Scripting) unsicher... htmlspecialchars($variable) tut schon einiges, ist zwar nicht ganz sicher aber es hilft wenigstens bisschen... Wenn dann doch mit Datenbanken gearbeitet wird sollte man auch noch mysql_escape_special_strings($variable) verwenden (man kann beides schachteln ...), damit SQL-Injections auch noch erschwehrt werden...
|
|
|
10/17/2011, 23:26
|
#15
|
elite*gold: 0
Join Date: Dec 2008
Posts: 1,304
Received Thanks: 485
|
echo "text $variable"; wird genauso behandelt wie echo "text".$variable;
eben nicht!
nehmen wir an, $var ist "hey".
bei "text $variable" wird "text $variable" ausgegeben, bei "text".$variable "text hey"
|
|
|
 |
|
Similar Threads
|
MineCraft-Server 24/7 rate System, nonlag, city and region system
07/05/2011 - Minecraft Server Advertising - 2 Replies
Welcome,
our new Server Europe is online and it growth.
We are looking for new Members and maybe VIP's who
want to build on a realistic City. Everyone could buy Region's
or get one for a bit of work. We are a friendly community
and so please visit us:
Server: mc-craft.eu
Website (Livemap): *removed
|
[PvP Funserver]DAMNED[new PvP System, Burnout System, Classbalancing, ...
06/25/2011 - Flyff PServer Advertising - 75 Replies
http://damned-flyff.com/img/logo.png
EXP Rate: 500x
Drop Rate: 350x
Penya Rate: 1200x
Hallo und herzlich Willkommen bei DAMNED-Flyff.
DAMNED Flyff ist ein neuer Funserver mit einem komplett neuen PvP System um den Spielern ein atemberaubendes PvP Erlebnis zu ermöglichen.
|
New AntiBot System working! Neues Bot System Funktioniert!
02/25/2011 - DarkOrbit - 7 Replies
Peace.
Tage lang war der Bot nicht mehr auf meinem Account an da ich immer andere Sachen zu tun hatte. Heute habe ich den iBot einmal wieder angemacht und zack! Gesperrt. Bei 5 Milliarden EPs bisschen schade aber man hat ja 3 "Gutscheine" erwischt zu werden!
Ich empfehle euch keine Bots mehr anzumachen! Anscheinend funktioniert das System nun sehr gut, immerhin wurde ich ein Jahr lang nicht gesperrt :D
Today i have been blocked after using iBot! I didn't use it for 3 or more days....
|
[VK] IPB Market System || GuidTech System! *CHEAP*
01/29/2011 - Trading - 5 Replies
Hey, E*PvPers,
Ich wollte da ich es nicht brauche, GuidTech und Ein IPB Market system verkaufen!
Kommen wir erstmal zu GuidTech:
GuidTech ist ein Schutzprogramm das über einen Host läuft, es schützt vor illegalen Leechen von Programmen zB Hacks, es ist aber eher was für C++ Coder...
Vorraussetzungen des Hosts:
IPB 2.3 (min.)
PHP 4
|
All times are GMT +1. The time now is 17:27.
|
|