Hi,
Ich habe folgendes Problem:
Ich habe 2 dateien, deren Aufgabe es ist einen Cookie mit der aktuellen SessionID zu setzten. Danach soll überprüft werden ob der Cookie gesetzt werden konnte und ob somit eine SessionID vorhanden ist.
Folgende Datei versucht einen Cookie mit der SessionID zu setzten
Die andere Datei überprüft ob der Cookie wirklich gesetzt wurde und leitet bei Bedarf auf die Fehlerseite um - außerdem wird in der Datenbank
Das Problem ist, dass die Dateien eigentlich ganz normal funktionieren bis auf in einigen Fällen - da kann kein Cookie gesetzt werden - welche Fälle das genau sind weiß ich noch nicht...
Findet vielleicht jemand einen logischen Fehler im Code? micht treibt das ganz langsam zur Verzweifelung...
Ich habe folgendes Problem:
Ich habe 2 dateien, deren Aufgabe es ist einen Cookie mit der aktuellen SessionID zu setzten. Danach soll überprüft werden ob der Cookie gesetzt werden konnte und ob somit eine SessionID vorhanden ist.
Folgende Datei versucht einen Cookie mit der SessionID zu setzten
PHP-Code:
<?
if(!$sessionid)
{
session_start();
$sess=session_id();
if(setcookie ("sessionid", $sess, time() + 86400))
{
$ges=1;
}
else
{
$wlt=1;
}
}
else
{
setcookie ("sessionid", $sessionid, time() + 86400);
$ges=1;
}
if($ges==1)
{
print("<script language=\"javascript\">
location.replace(\"WEITERLEITUNG ZUR ÜBERPRÜFUNGSDATEI\");
</script>");
}
elseif($wlt==1)
{
print("<script language=\"javascript\">
location.replace(\"DATEI MIT FEHLERMELDUNG COOKIE\");
</script>");
}
?>
Die andere Datei überprüft ob der Cookie wirklich gesetzt wurde und leitet bei Bedarf auf die Fehlerseite um - außerdem wird in der Datenbank
PHP-Code:
<?
$host="HOST";
$user="USER";
$passwort="PASSWORT";
$tablename2="XXX";
$tablename7="XXXX";
$db="XXXXX";
$link=mysql_connect($host, $user, $passwort);
mysql_select_db($db, $link);
if(!$sessionid)
{
$wlt=1;
}
else
{
$get="select SessionID from $tablename7 where SessionID='$sessionid'";
$get=mysql_query($get);
$get=mysql_fetch_array($get);
if($get)
{
}
else
{
$setid1="insert into $tablename2 (SessionID, News) values ('$sessionid', 1)";
mysql_query($setid1);
$setid2="insert into $tablename7 (SessionID) values ('$sessionid')";
mysql_query($setid2);
}
$wlt=2;
}
mysql_close($link);
if(mysql_errno())
{
echo mysql_error();
$wlt='';
}
if($wlt==1) //falls Cookie nicht setzbar --> weiterleitung auf Fehlerseite
{print("<script language=\"javascript\">
location.replace(\"FEHLERSEITE\");
</script>");}
if($wlt==2) {print("<script language=\"javascript\">
location.replace(\"WEITERLEITUNG\");
</script>");}
?>
Das Problem ist, dass die Dateien eigentlich ganz normal funktionieren bis auf in einigen Fällen - da kann kein Cookie gesetzt werden - welche Fälle das genau sind weiß ich noch nicht...
Findet vielleicht jemand einen logischen Fehler im Code? micht treibt das ganz langsam zur Verzweifelung...
Kommentar