HardwarePope
Cadet 4th Year
- Registriert
- Feb. 2004
- Beiträge
- 114
Hallo Leute,
ich bin momentan grade dran mein Login-System für meine Seite zu programmieren und habe dabei einen schonmal von mir programmierten Code für eine andere Seite übernommen und angepasst. Dort funktioniert er bestens aber hier scheint mein Sckript die Session-Variablen nicht korrekt an die nächste Seite weiterzugeben.
Also, nach dem Login wird die Seite login.php aufgerufen (wobei config.php die Verbindungsdaten zur MySQL DB sind und functions.php ne Datei ist, um die Eingaben zu prüfen und manipulierbaren Code herauszufiltern), in der der relevante Code so aussieht:
Wenn der Login erfolgreich ist wird per Meta Refresh zur Administrations-Startseite geleitet.
Dort wird die Datei session.php included, die dann überprüft, ob jemand eingeloggt ist oder nicht eingeloggt auf die Seite zugreifen will. Wenn das so ist, wird das Skript beendet und eine Fehlerseite aufgerufen (error.php)
Obwohl auf der Login Seite bei korrektem Login auch alles funktioniert und man korrekt weitergeleitet wird, wird auf der nächsten Seite versucht, "error.php" aufzurufen, sprich das Skript meint, man sei nicht eingeloggt. Per echo habe ich mal versucht die zwei Session Variablen auszugeben aber es kam nichts, woraus ich schließe, dass die Session-Variablen nicht korrekt übergeben wurden.
Kann mir bitte jemand helfen?
Danke schon einmal in Voraus und viele Grüße,
HardwarePope
ich bin momentan grade dran mein Login-System für meine Seite zu programmieren und habe dabei einen schonmal von mir programmierten Code für eine andere Seite übernommen und angepasst. Dort funktioniert er bestens aber hier scheint mein Sckript die Session-Variablen nicht korrekt an die nächste Seite weiterzugeben.
Also, nach dem Login wird die Seite login.php aufgerufen (wobei config.php die Verbindungsdaten zur MySQL DB sind und functions.php ne Datei ist, um die Eingaben zu prüfen und manipulierbaren Code herauszufiltern), in der der relevante Code so aussieht:
PHP:
include("../scripts/config.php");
include("../scripts/functions.php");
$user = maskieren($_POST["user"]);
$passwort = maskieren($_POST["passwort"]);
$query = mysql_query("SELECT passwort FROM datenbankname WHERE username = '$user'");
$treffer = mysql_num_rows($query);
$ds = mysql_fetch_array($query);
$realname = $ds["realname"];
if(!empty($treffer) AND $ds["passwort"] == $passwort)
{
session_start();
$_SESSION["login"] = 1;
$_SESSION["user"] = $user;
mysql_query("UPDATE usa_userlist SET lastlogin = NOW() WHERE username = '$user'");
}
Wenn der Login erfolgreich ist wird per Meta Refresh zur Administrations-Startseite geleitet.
Dort wird die Datei session.php included, die dann überprüft, ob jemand eingeloggt ist oder nicht eingeloggt auf die Seite zugreifen will. Wenn das so ist, wird das Skript beendet und eine Fehlerseite aufgerufen (error.php)
PHP:
session_start();
if($_SESSION["login"] != 1)
{
include("error.php");
exit();
}
else
{
$user = $_SESSION["user"];
}
Obwohl auf der Login Seite bei korrektem Login auch alles funktioniert und man korrekt weitergeleitet wird, wird auf der nächsten Seite versucht, "error.php" aufzurufen, sprich das Skript meint, man sei nicht eingeloggt. Per echo habe ich mal versucht die zwei Session Variablen auszugeben aber es kam nichts, woraus ich schließe, dass die Session-Variablen nicht korrekt übergeben wurden.
Kann mir bitte jemand helfen?
Danke schon einmal in Voraus und viele Grüße,
HardwarePope
Zuletzt bearbeitet: