Hallo Forum,
während eines Praktikums bei einem Petrieb sollte ich eine Webseite schreiben. Für diese Seite hab ich jetzt ein Update geschrieben und einen Login eingebaut.
Die Sache ist jetzt das es auf meinem Webspace ohne Probleme läuft aber auf dem Webspace von der Firma gibt es leider Probleme mit dem Login. Wenn man sich einloggt bekommt man die meldung das dieser erfolgreich war und wird weitergeleitet. Auf der Loginseite kommt jedoch die Meldung das man nicht eingeloggt ist was normal der Grund ist das die SessionID nicht gefunden wurde was normal wiederrum heißt dass das Cookie fehlt.
Also ist meine Frage ob es denn an der PHP Version / Einstllung liegen kann oder ob es evtl. doch am Script liegen kann.
if(!isset($_SESSION['UserID'])) {
function doLogin($ID){
$sql = "UPDATE User SET SessionID = '".mysql_real_escape_string(session_id())."', IP = '".$_SERVER['REMOTE_ADDR']."' WHERE ID = '".$ID."'";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
$sql = "SELECT Nickname FROM User WHERE ID = '".$ID."'";
$result = mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
$row = mysql_fetch_assoc($result);
$_SESSION['UserID'] = $ID;
$_SESSION['Nickname'] = $row['Nickname'];
$sql = "INSERT INTO Log (Benutzer,Datum,Aktion) VALUES ('".$_SESSION['UserID']."',now(),'Hat sich eingeloggt.')";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
}
if(isset($_POST['submit']) AND $_POST['submit']=='Einloggen'){
$sql = "SELECT ID FROM User WHERE
Nickname = '".mysql_real_escape_string(trim($_POST['Nickname']))."' AND
Passwort = '".md5(trim($_POST['Passwort']))."' AND
Aktiv = '1'";
$result = mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
$row = mysql_fetch_assoc($result);
if (mysql_num_rows($result)==1){
doLogin($row['ID'], isset($_POST['Autologin']));
echo "<div id=\"error_g\"><b>Login war erfolgreich!</b></div><br /><br />
<div id=\"error_y\"><b>Sie werden nun weitergeleitet.</b></div><br /><br />";
echo "<meta http-equiv=\"refresh\" content=\"3; URL=login_index.php\">";
}
else{
echo "<div id=\"error_r\"><b>Login fehlgeschlagen!</b></div><br /><br />
<div id=\"error_y\"><b>Benutzername oder Passwort falsch.</b></div><br /><br />";
echo "<meta http-equiv=\"refresh\" content=\"3; URL=login.php\">";
}
}
else{
echo "<center>";
echo "<form ".
" name=\"Login\" ".
" action=\"".$_SERVER['PHP_SELF']."\" ".
" method=\"post\" ".
" accept-charset=\"ISO-8859-1\">\n";
echo "<table><tr>";
echo "<td>Benutzername:</td>";
echo "<td><input type=\"text\" name=\"Nickname\" maxlength=\"32\"></td></tr>";
echo "<tr>";
echo "<td>Passwort:</td>";
echo "<td><input type=\"password\" name=\"Passwort\"></td></tr>";
echo "<tr><td></td>";
echo "<td align=\"right\"><input type=\"submit\" name=\"submit\" id=\"button\" value=\"Einloggen\"></td>";
echo "</tr></table></center>";
}
}
else{
echo "<meta http-equiv=\"refresh\" content=\"0; URL=login_index.php\">";
}
Alles anzeigen
Das ist der Code den ich für den Login benutze... und bis jetzt hat das auch wirklich auf allen Seiten die ich geschrieben hab funktioniert.
Brauch mal ein paar 2 Meinungen weil ich einfach nicht weiterkomme. Danke im Vorraus für Antworten...
MfG, Eggerd