Sehr kurioses Session-Problem

MiNiMaG

Erfahrenes Mitglied
Kurze Vorgeschichte:
Ich habe mir ein CMS-Grundsystem programmiert, das ich dann modular für einzelne Projekte anpasse und erweitere. Dazu gehört auch ein Login mit Sessions.
Dieses kommt auch bei anderen Projekten zum Einsatz und klappt einwandfrei.

Bei meinem jetzigen Projekt kommt 1:1 der selbe Quellcode zum Einsatz.

Problem:
An manchen Rechnern klappt zwar der Login, aber die Session bleibt nicht erhalten.
Es kommt die Standard "Sie wurden eingeloggt"-Seite und userbedingte Elemente werden angezeigt (werden anhand der Session verifiziert - nicht am Login), ABER egal was danach geklickt wird, der User ist automatisch wieder ausgeloggt

Um das Ganze nochmal zu verdeutlichen, eine kleine "Tabelle":
Code:
          |PC1|PC2|PC3|PC4|PC5
Firefox   | X | X | X | X | -
IExplore  | X | X | X | - | -

X = Keine Probleme
- = Sessionprobleme

PC1 + PC2 = Standort A - Freenet
PC3       = Standort B - Arcor
PC4 + PC5 = Standort C - Arcor

Standort A und B bin ich, Standort C ist 30 km entfernt.

Diese Probleme gibt es auch nur bei diesem einen Projekt. Bei anderen klappt das mit PC1 - PC5 einwandfrei.

Hatte jemand von euch schon mal solche Probleme oder eine Idee was da falsch sein könnte?
 
Cookies werden akzeptiert
Session ID wird nicht im GET übermittelt / angehängt

Wie gesagt, auf PC 4 und PC 5 klappt es auf anderen Seiten, nur auf der einen nicht.

Falls Interesse besteht, hier das Modul:
PHP:
<?php
$modulname = "<b>Login &amp; Sessions</b> - Verwaltet Login, Loginformular, Sessions und Usernavigation";

if ($_GET['log'] == "out")
{
	session_start ();
	session_unset ();
	session_destroy ();
	$debuglog[] = "[MODUL: Login &amp; Sessions] User ausgeloggt";
}
session_start();
$debuglog[] = "[MODUL: Login &amp; Sessions] Session gestartet";

if ($_POST['do'] == "login")
{
	$result = $db->query("SELECT * FROM accounts WHERE username = '".$_POST['login']."' AND passwort = '".$_POST['password']."'");
	if ($db->numRows() != 1)
	{
		$debuglog[] = "<font color=#F00><b><blink>=&gt;</blink> [MODUL: Login &amp; Sessions] User/Passwort nicht gefunden <blink>&lt;=</blink></b></font>";
	}
	else
	{
		$data = $db->fetch();
		$_SESSION['ses_username'] = $data['username'];
		$_SESSION['ses_name'] = $data['name'];
		$_SESSION['ses_userid'] = $data['id'];
		$_SESSION['ses_email'] = $data['email'];
		$debuglog[] = "[MODUL: Login &amp; Sessions] User erfolgreich eingeloggt";
	}
}

if (isset($_SESSION['ses_userid']))
{
	$login ='';
	$usernavigation = '[<a href="index.html?log=out">Ausloggen</a>]';
	$userinfo = $_SESSION['ses_name']." | ".$newsletter." | ".$autologin;
	$debuglog[] = "[MODUL: Login &amp; Sessions] User ist eingeloggt [SESSION]";
}
else 
{
	eval ("\$login .= \"".gettemplate("login")."\";");
	$debuglog[] = "[MODUL: Login &amp; Sessions] User nicht eingeloggt";
}
?>
 
Zeig mal die für die Sitzungs-Cookies wichtigen Einstellungen („session.cookie_…“). Vermutlich muss dort etwas verändert werden.
 
Es ist zwar jetzt nicht auf einem meiner Server, auf dem der Spaß liegt, aber auf diesem Webspace liegt auch eines der besagten anderen Projekte...
 
Zuletzt bearbeitet:
Das macht ja nichts. Trotzdem können sich jeweiligen die Einstellungen unterscheiden oder nicht spezifisch genug sein.
 
Dann erst mal danke soweit.

Jetzt die Frage: Was mach ich jetzt am Besten?" (Ausser auf Sven's Wohl ein Feierabendbier zu trinken?)

Edit:
Der Spaß liegt bei All-Inkl und an den Serversettings kann ich definitv nichts ändern.
 
Zuletzt bearbeitet:
Zurück