PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sessionhandling mit register_globals=off


mad-boy
19.10.2003, 18:29:44
Hi,
ich stehe mit dem Sessionhandling bei ausgeschalteten globals noch etwas auf dem Kriegsfuß, was ist hierdran falsch:


if($_GET['template']) {
$template=$_GET['template'];
session_register("template");
} elseif(!$_SESSION['template']) {
$template="basic";
session_register("template");
}


wenn ich nun schreibe echo $_SESSION['template'] wird nichts ausgegeben, eigendlich müsste aber doch "basic" ausgespuckt werden?!?

Ben20
19.10.2003, 20:28:03
session_register brauchst Du ab 4.1.x nicht mehr. Warum es nicht geht kann ich Dir allerdings auch nicht sagen. So müsste es aber auf jeden Fall gehen:



session_start();

if(! isset($_SESSION["template"])) {

$_SESSION["template"] = 'basic';

}

if(isset($_GET["template"])) {

$_SESSION["template"] = $_GET["template"];

}

mad-boy
19.10.2003, 20:38:09
Danke, funktioniert! :)

Muss ich die Variabeln bei jedem Scriptaufruf neu setzen oder werden die automatisch übernommen? Also muss ich bei jedem Seitenaufruf wieder $_SESSION['template']=$_SESSION['template']; schreiben oder ist das nicht nötig?

Ben20
19.10.2003, 21:10:41
Nein musst Du nicht!