Es geht um ein Loginscript und um Cookies. Es ist viel Script, aber wenn ihr etas Zeit habt wäre euch sehr dankbar wenn ihr mir Ratschläge gibt wie man das anders oder besser macht. Ich habe eine login.php die einen Cookie setzt:
Dann habe ich eine head.php die in jeder Seite per include() da ist. Sie soll checken ob der Cookie existiert und falls ja den User einloggen. Dann sollte sie aber irgendwie nen Cookie setzen, damit der User net bei jedem Aufruf einer Seite neu eingelogt wird. Danke für eure Hilfe.
PHP-Code:
if ($HTTP_COOKIE_VARS["iridios"] == NULL)
{
$cookietime = time()+3600*24*300;
$cookiedatum = date("d.m.Y um H:i Uhr");
$cookiecontent = "$username|$passwort|$cookiedatum";
setcookie("iridios","$cookiecontent",$cookietime,"","");
}
include("var.php");
$connect = @ mysql_connect($dbserver, $dbuser, $dbpass);
if (!$connect)
{
header("Location: index.php?i=sna.php");
exit;
}
mysql_select_db($dbname,$connect);
$query = "SELECT level, rang, zugriff FROM user WHERE username = '".$username."' AND passwort = '".$passwort."'";
$result = mysql_query($query,$connect);
// hier geht dann der loginvorgang noch ein bisschen weiter, aber das dürfte ja egal sein
?>
PHP-Code:
if ($logincheck != 1) // also wenn user nicht eingelogt
{
if ($HTTP_COOKIE_VARS["iridios"] != NULL)
{
$cookieget = $HTTP_COOKIE_VARS["iridios"];
$cookiesplit = split("|", $cookieget);
$username = $cookiesplit[0];
$passwort = $cookiesplit[1];
$cookiedatum = $cookiesplit[2];
$query = "SELECT level, rang, zugriff FROM user WHERE username = '".$username."' AND passwort = '".$passwort."'";
$result = mysql_query($query,$connect);
while ($get = mysql_fetch_array($result,MYSQL_ASSOC))
{
if (!$get)
{
header("Location: lfi.php?i=lf.php");
exit;
}
$level = $get[level];
$rang = $get[rang];
$zugriff = $get[zugriff];
}
$logincheck = 1;
session_start();
session_register("username");
session_register("level");
session_register("logincheck");
session_register("rang");
session_register("zugriff");
$cookietime = time()+3600*24*300;
$cookiesetdatum = date("d.m.Y um H:i Uhr");
$cookiecontent = "$username|$passwort|$cookiesetdatum";
setcookie("iridios","$cookiecontent",$cookietime,"","");
}
else
{
session_start();
}
}
else // wenn user nicht eingelogt
{
session_start();
}
Kommentar