[HILFE] sessions

phpMars

Erfahrenes Mitglied
Also ich habe eine Frage zum Thema Sessions.

Über ein Flashmenü erhalte ich folgende ID's (jenachdem ob die Sprache deutsch oder englisch ist):

deutsch: 78, 82, 87, 88, 89
englisch: 145, 146, 147, 148, 149


Jenachdem welchen Link ich im Flashmenü auswähle öffnet sich ein weiteres Menü (hier mal Menü2) in einer Tabelle.

78 -> menuetikettieranlagen.inc.php
82 -> menuetikettendrucksysteme.inc.php
87 -> menuscanner.inc.php
88 -> menuetikettensoftware.inc.php
89 -> menuverbrauchsmaterial.inc.php

145 -> menulabelingsystems.inc.php
146 -> menulabelprinters.inc.php
147 -> menuscanners.inc.php
148 -> menulabelsoftware.inc.php
149 -> menuconsumables.inc.php


So, damit das Menü2 aber nicht verschwindet, wenn ich auf einen Link klicke, muss es ja in einer Session gespeichert werden; bis die Variable überschrieben wird und ein anderes Menü2 geöffnet werden soll.

Wie funktioniert das ?

Mein Vorschlag wäre gewesen:

Die Session speichern:
PHP:
if ($id == 78)
$_SESSION["menu2"] = menuetikettieranlagen;
elseif ($id == 82)
$_SESSION["menu2"] = menuetikettendrucksysteme;
....

Meine Include für die Menü-Datei:
PHP:
include("'.$_SESSION["menu2"].'.inc.php");

Funktioniert das so?

Ich hoffe ihr versteht mich :)
 
Grundsätzlich kann das so funktionieren. Gibt es denn Probleme damit? Allerdings würde ich an deiner Stelle nicht massenhaft if()s einsetzen, um die IDs zu prüfen, sondern besser ein switch(). Außerdem solltest du die Zuweisungen an die $_SESSION-Variable als Zeichenketten schreiben; so, wie du das zur Zeit machst, ist das äußerst unschön.

-Gawayn
 
Ok, ich habe die IF's weggelassen und habe das in eine switch reingepackt.

Aber irgendwie speichert sich die Session nicht.
Also wenn ich auf den Menüpunkt mit id=78 gehe, erscheint mein Menu, aber sobald ich dann einen neuen Link wähle, z.B. id=125 verschwindet mein Menü wieder und meine Session ist leer.

Wo liegt mein Fehler ?

if(isset($_SESSION["menu2"]))
include($_SESSION["menu2"].'.inc.php');
 
Zuletzt bearbeitet:
Zurück