PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Session ID gleich, Session Veriable verloren


Jannat
13.02.2007, 14:11:39
Hallo!

Ich versuche nun seit einigen Stunden ein Miniaturskript zum Laufen zu kriegen (Habe jeglichen überflüssigen Code entfernt, um die Lösung zu finden).

In Datei 1 speichere ich eine Session Variable und in Datei 2 möchte ich sie einfach nur wieder ausgeben. Leider funktioniert es nicht, obwohl Cookies gesetzt werden und die Session ID in Datei 1 und 2 dieselbe ist.

Langsam weiss ich einfach nicht mehr weiter und bin gespannt auf Rückmeldungen :)

Danke!

SW Versionen:
PHP Version 5.2.0
Apache 2.0

php.ini:
register_globals = on
session.use_trans_sid = on
session.use_cookies = on

Datei 1

session_start();
$_SESSION['var'] = "ok";

echo session_id();
echo "<a href='http://" . $_SERVER["HTTP_HOST"] . "/eLearning/module/var_read.php'>link</a>";
session_write_close();


Datei 2

session_start();
echo session_id() . "<br>";

if (!$_SESSION['var']) echo "no";
else echo $_SESSION['var'];

BenniG.
13.02.2007, 14:15:28
schonmal

print_r($_SESSION);

gemacht?

Jannat
13.02.2007, 14:17:50
Das ging ja schnell! Danke ...

Ja, probiert, ist leer. Innerhalb einer Datei kann ich eine Session Var aufrufen, aber in der nächsten nicht mehr.

LG

BenniG.
13.02.2007, 14:21:38
Und du bist dir ganz sicher, dass die Session-Id gleich ist?
Ist das der komplette Quelltext der Dateien?

Jannat
13.02.2007, 14:24:47
Die Dateien enthalten sonst nur HTML. Hier die Browserausgabe:

Ergebnis Datei 1:
jsbdbgg5vd3m7ds09utog3d5d6
link

Ergebnis Datei 2 (eingefügt print_r($_SESSION);):
noArray ( )
jsbdbgg5vd3m7ds09utog3d5d6

BenniG.
13.02.2007, 14:32:13
Die Dateien enthalten sonst nur HTML
Das steht aber hoffentlich nicht vor Session_Start, oder? Aber dann müsste eigentlich die Session-ID unterschiedlch sein.. Wie siehts aus, wenn du wirklich (versuchsweise) mal nur die paar Befehle in die Dateien packst?

Jannat
13.02.2007, 14:35:03
session_start() ist janz obe!

Auch nur die Befehle ergeben exakt das Ergebnis :(
(Muss in ein Meeting und schaue später nochmal rein)

Danke!

BruceCompanys
14.02.2007, 21:18:03
Erstmal killst du die register_globals!

Dann machst du das use_trans_sid aus!

Dann gibst du oben error_reporting(E_ALL); ein!

Dann sagst du uns was noch kommt!

Und wenn alles nix hilft... bin ich doof und php auch ... ;-)
Nein... dann weiß ich es auch net

Und dann

Jannat
15.02.2007, 10:01:40
Vielen Dank für die Hinweise! Ich werde es alsbald möglich testen, weiss aber auch noch nicht, wann ich wieder an meinem Arbeitsplatz sein werde ... Spätestens Montag. Bin gerade auf einer Schulung. Also melde mich Montag zurück

Grüße!

feuervogel
15.02.2007, 10:40:56
und eventuell auch mal das gesamte script hier anghängen bzw. posten.

Jannat
19.02.2007, 10:14:18
Tja ihr Lieben!

Es funktioniert alles wieder. Wie von Zauberhand funktioniert wieder mein gesamtes Modul, mein Testskript und überhaupt alles. Ich habe heute Vormittag lediglich die register_globals und die use_trans_sid genullt (wie sie auch eingestellt waren bevor der Fehler aufgetaucht ist), den Server neu gestartet und dann ging es wieder.

Ehrlich: Ich verstehe die Welt nicht mehr! ... mir solls aber natürlich Recht sein.

Liebe Grüße und schönen Dank!
Nathalie

PS. Mir fällt noch was ein: Ich habe die in der php.ini für Sessions angegebenen Pfade/Ordnerstruktur auf dem Server fest angelegt. Meint ihr das könnte die Lösung gewesen sein?