Radhad
Erfahrenes Mitglied
Hi zusammen,
ich habe ein Loginscript überarbeitet. Ab sofort wird zu jedem User eine eindeutige SessionID in der Datenbank gespeichert. Diese wrid auch beim Login wieder gesetzt. Das Problem: im Firefox 2.0 klappt dies wunderbar. Im IE7 wird die SessionID nicht übernommen nach header("Location: "...);.
Hier mal das Script:
Weiß jemand woran das beim IE7 liegt?
Gruß Radhad
ich habe ein Loginscript überarbeitet. Ab sofort wird zu jedem User eine eindeutige SessionID in der Datenbank gespeichert. Diese wrid auch beim Login wieder gesetzt. Das Problem: im Firefox 2.0 klappt dies wunderbar. Im IE7 wird die SessionID nicht übernommen nach header("Location: "...);.
Hier mal das Script:
PHP:
<?php
// Datenbankverbindung aufbauen
include("../config.php");
session_start();
$name = $_REQUEST["username"];
$pw = $_REQUEST["password"];
$urlid = $_REQUEST["urlid"];
$sql = "SELECT * FROM users WHERE username='".mysql_real_escape_string($name)."'";
$sql_result = mysql_query($sql) or die("Error: ".mysql_error());
if(mysql_num_rows($sql_result) > 0)
{
// Benutzerdaten in ein Array auslesen.
$data = mysql_fetch_assoc($sql_result);
if($data["Password"] == md5($pw))
{
if($data["SessionID"] == NULL)
{
$newsession = false;
do
{
$newsession = session_regenerate_id();
if($newsession == true)
{
$sql = "SELECT sessionid FROM users WHERE sessionid = '".session_id()."'";
$checksession = mysql_query($sql) or die("Error: ".mysql_error());
if(mysql_num_rows($checksession) > 0)
{
$newsession = false;
}
}
}
while($newsession == false);
$sql = "UPDATE users SET sessionid = '".session_id()."' WHERE userid = ".$data["UserID"];
mysql_query($sql) or die("Error: ".mysql_error());
}
else
{
session_id($data["SessionID"]);
}
// Sessionvariablen erstellen und registrieren
$_SESSION["user_id"] = $data["UserID"];
$_SESSION["username"] = $data["Username"];
echo session_id();
header ("Location: ".$urlid);
}
else
{
header ("Location: ../index.php?main=fehler&id=1");
}
}
else
{
header ("Location: ../index.php?main=fehler&id=999");
}
?>
Gruß Radhad