Sida 1 av 1

Att switcha mellan olika sessioner

InläggPostat: 14 dec 2011, 18:03
av mos
Det går att byta / switcha mellan sessioner under ett sidanrop. Detta kan vara bra när man integrerar flera olika applikationer till en webbplats och de olika delarna är beroende av sina egna sessioner.

Här kan du se ett fungerande exempel samt källkod på hur du gör:
http://dbwebb.se/examples/switch_session/

Denna funktionalitet är integrerad i medes med hjälp av två funktioner i $pp. Här följer källkoden för dessa funktioner.

Använd denna metod för att switcha från $pp's session till en egen namngiven ($pp->SwitchToSession('my_own_session')).
Kod: Markera allt
   /**
    * Switch to a user named session.
    */
   public function SwitchToSession($name) {
      $id = (isset($_COOKIE[$name])) ? $_COOKIE[$name] : null;
      session_write_close();
      session_name($name);
      if(!$id) {
         session_start();
         session_regenerate_id();
         $_SESSION = array();
      } else {
         session_name($name);
         session_id($id);   
         session_start();   
      }
   }



Använd denna metod för att switcha tillbaka till $pp's session ($pp->SwitchToInitialSession()).
Kod: Markera allt
   /**
    * Switch to the inital session
    */
   function SwitchToInitialSession() {
      session_write_close();
      session_name($this->sessionName);
      session_id($this->sessionId);
      session_start();
   }