SESSION mal gehts - dann mal wieder nicht?

Ich habe da ein kleines Kuriosum.

Als PHP Newbie versuche ich gerade Sessions für den User aufzubauen.

Ich habe mir zum Test mal 2 Seiten gemacht (Beispiel)
In der ersten werden die Variablen festgelegt.
In der zweiten wird nur geschaut obs funzt.

NA also - erster Test (DSL) war erfolgreich.

Doch dann Test mit Modem geht NICHT ???
Test mit T3 geht auch nicht ???

Was habe ich da nicht verstanden / vergessen ?

Beispiel:
-----------------Seite 1----------------------------

<?php // Die Seite Test1.php
session_start();
$_SESSION[‚user‘] = „Dagobert“;
$_SESSION[‚ort‘] = „Entenhausen“;
?>

-----------------Seite 1----------------------------

<?php // Die Seite Test2.php
session\_start(); echo " Name " . $\_SESSION['user']; echo " Ort" . $\_SESSION['ort']; ?\> ---------------------------------------------------- Herzlichsten Dank im Voraus

Hi Andreas,

ich habe gerade ein aehnliches Problem und wuerde Dir mal folgendes raten: Sofern die Website nicht riesengross ist und damit Bandbreite verschlingt, einfach mal nach der Anmeldung die Taste F5 (Aktualisieren) druecken. Offensichtlich sind es entweder Fehler im Browser oder Fehler bei der Erstellung der Session. Denn bei mir zumindest merkt er dann, dass ich eingeloggt bin und stellt mir die richtige Site dar. Vielleicht funzt es bei Dir auch auf diesem Weg…

cu,
cjmatsel

Klingt komisch dieser Fehler. Ich kann nicht vorstellen, dass die Zugangsart irgendwie für den Erfolg deines Skripts verantwortlich ist. Was ich mir aber vorstellen kann, ist, dass am Server der Parameter register_globals auf off steht und somit auch keine Sessionvariablen verfügbar sind. Bau doch mal folgendes in dein Skript mit ein:

if ( !isset($_SESSION)) { $_SESSION = &$HTTP_SESSION_VARS;}
if (isset($_SESSION)) { extract($_SESSION); }

Hi Juergen,

da Du auf meinen Artikel geantwortet hast, aber wahrscheinlich den ersten Autor meintest, schicke ich Dir trotzdem mal meine Loesung. Ich hatte vergessen, die Abfrage nach der Session-Variable UEBER das Formular zu packen, also ganz nach oben am besten. Jetzt klappts auch…

<?PHP session_cache_limiter('private');
session\_cache\_expire('90'); session\_start(); include("./dbcon.php"); //DB-Connection if($HTTP\_POST\_VARS['user']){ if($PHPSESSID == $HTTP\_POST\_VARS['sessid']){ if(!empty($user) and !empty($pass)){ $pass1 = md5($pass); //Verschluesselung des Passwortes $result = mysql\_query("SELECT \* FROM user WHERE nick = '$user' AND pass= '$pass1' AND open = '1'") or error (\_\_LINE\_\_,\_\_FILE\_\_,"",mysql\_error());//Error-Funktion bei SQL-Fehlern if( mysql\_num\_rows($result) == "1"){ session\_register("user"); session\_register("pass"); session\_register("login"); }elseif( mysql\_num\_rows($result) == "0"){ //hier weiss ich noch nicht, was rein soll } } } } ?\>