Objekte in der Session speichern?!?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Objekte in der Session speichern?!?

    Hallo leute,

    bin am verzweifeln, ich führe diesen code aus (default case wird erfolgreich ausgeführt):


    PHP-Code:
        require_once("obj_cn.php");
        
    $cn = new obj_cn;
        
    session_register('cn');

        switch(
    $o){
            case 
    "login":

                
    $cn $_SESSION['cn'];
                echo 
    "mid ".$cn->user->userID."<br>";

            break;
            
            default:

            
    $cn->user->reload($userID);
            
    $cn->win->showLogin();

            break;
        } 
    Dann komme ich aus der showLogin() Methode wieder zurück, laufe in case "login" und möchte auf das user objekt zugreifen (echo ausgabe) - leider ist es verschwunden?!?!?
    Die Variablen der Klasse obj_cn sind verfügbar jedoch NICHT die Objekte wie z.B. user
    Wo liegt mein Fehler?

    Hier die Klasse obj_cn zum besseren verständnis (habe die klasse etwas gekürzt zur besseren Lesbarkeit). Vielen Dank im Voraus für eure Hilfe


    PHP-Code:
      class obj_cn{

            var 
    $func;
            var 
    $win;
            var 
    $te;
            var 
    $db;
            var 
    $session;
            var 
    $design;
            var 
    $link;
            var 
    $user;

            function 
    obj_cn(){
                require_once(
    "obj_session.php");
                require_once(
    "obj_database.php");
                require_once(
    "obj_functions.php");
                require_once(
    "obj_windows.php");
                require_once(
    "obj_textengine.php");
                require_once(
    "obj_design.php");
                require_once(
    "obj_systemLinks.php");
                require_once(
    "obj_User.php");

                
    $this->func = new obj_functions;
                
    $this->win = new obj_windows;
                
    $this->te = new obj_textengine;
                
    $this->db = new obj_database;
                
    $this->session = new obj_session;
                
    $this->design = new obj_design;
                
    $this->link = new obj_systemLinks;
                
    $this->user = new obj_User;
            }
      
      } 

  • #2
    Sämtliche Klassendefinitionen für sämtliche in der Session gespeicherten Objekte müssen vor dem Aufruf von session_start() eingebunden werden ...

    PS.: Die Verwendung von session_register() ist mittlerweile obsolet ... und sollte nicht mehr verwendet werden ... !
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      http://de3.php.net/manual/de/ref.session.php

      schau die dort mal den obersten "Achtung" Hinweis an.
      mfg
      marc75

      <Platz für anderes>

      Kommentar

      Lädt...
      X