hallo
ich hab mich entschlossen ein eigenes loginsystem in php zu basteln. das ganze funktioniert über cookies zur identifizierung. bei sektionen etc soll das script überpfüfen ob noch alles stimmt. d.h er ließt das cookie aus und vergleicht es mit den daten in der datenbank falls dann das cookie geändert worden ist soll er sich ausloggen. es funktioniert sogar schon halbwegs. das einzige problem ist, wenn die seite offen ist und ich dann das cookie verändere (informationen herrauslösche) dann bleibt man trotzdem eingeloggt genauso wenn ich ne andere seite mit dem selben browser aufrufe und dann wieder die seite wo der code fürs cookie überprüfen drin ist bleibt man eingelogged, sogar wenn ich das cookie lösche und dann refresh mach bleibt man ebenfalls eingelogged. erst wenn ich nen neuen browser aufrufe dann erkennt er es und zeigt wieder den login bereich.
außerdem funktioniert die weiterleitung nicht bei nem fehlerhaften login (soll bei nem fehler cookie löschen und dann wieder auf die index seite weiterleiten)
hier ist der code der zum cookie überprüfen dienen soll, bitte seit nicht zu hart mit mir, das hab ich nirgendswo kopiert und ich mach erst seit ca einer woche sachen mit php
es gibt zwar die möglichkeit identifizierungen über sessions aber cookies sind mir lieber
natürlich nehm ich gerne vorschläge etc entgegen wie ich die identifizierung über cookies noch "sicherer" machen kann
ich hab mich entschlossen ein eigenes loginsystem in php zu basteln. das ganze funktioniert über cookies zur identifizierung. bei sektionen etc soll das script überpfüfen ob noch alles stimmt. d.h er ließt das cookie aus und vergleicht es mit den daten in der datenbank falls dann das cookie geändert worden ist soll er sich ausloggen. es funktioniert sogar schon halbwegs. das einzige problem ist, wenn die seite offen ist und ich dann das cookie verändere (informationen herrauslösche) dann bleibt man trotzdem eingeloggt genauso wenn ich ne andere seite mit dem selben browser aufrufe und dann wieder die seite wo der code fürs cookie überprüfen drin ist bleibt man eingelogged, sogar wenn ich das cookie lösche und dann refresh mach bleibt man ebenfalls eingelogged. erst wenn ich nen neuen browser aufrufe dann erkennt er es und zeigt wieder den login bereich.
außerdem funktioniert die weiterleitung nicht bei nem fehlerhaften login (soll bei nem fehler cookie löschen und dann wieder auf die index seite weiterleiten)
hier ist der code der zum cookie überprüfen dienen soll, bitte seit nicht zu hart mit mir, das hab ich nirgendswo kopiert und ich mach erst seit ca einer woche sachen mit php
PHP-Code:
<?
include "config/config.php";
if(isset($_COOKIE['login']))
{
mysql_connect($sqlDB, $sqlUser, $sqlPass);
mysql_select_db($sqlTable);
$login_infos = explode("|", $_COOKIE['login']);
$sql = "SELECT User_ID, User_Name , User_Pass FROM t_user WHERE 1 AND User_Name = '".$login_infos[1]."'";
$resultid = mysql_query($sql) OR die(mysql_error());
$result = mysql_fetch_assoc($resultid);
if(strtolower($result['User_Name']) == strtolower($login_infos[1]) AND ($result['User_Pass']) == ($login_infos[2]))
{
echo "Herzlich Willkommen <b>".$result['User_Name']."</b><br>";
echo "<a href=setcookie.php?action=logout>Logout</a><br>";
}
else
{
setcookie("login", "", time());
echo "<html>";
echo "<head><title>...::::LoginTest::::...</title></head>";
echo "<body><br>";
echo "Fehler beim Autologin. Sie werden automatisch weitergeleitet";
echo "<meta http-equiv=\"refresh\" content=\"5; URL=http://localhost/login/index.php\">";
}
}
else
{
echo "<form action=\"setcookie.php\" method=\"post\">";
echo "<input type=\"text\" name=\"Username\"><br>";
echo "<input type=\"password\" name=\"Userpass\"><br>";
echo "Auto Login <input type=\"checkbox\" name=\"AutoLogin\"><br>";
echo "<input type=\"submit\" name=\"Submit\" value=\"Login\">";
echo "</form>";
}
?>
</body>
</html>
natürlich nehm ich gerne vorschläge etc entgegen wie ich die identifizierung über cookies noch "sicherer" machen kann
Kommentar