Re: passing an object using session var

From: Date: Wed, 29 Nov 2006 15:35:57 +0000
Subject: Re: passing an object using session var
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-245281@lists.php.net to get a copy of this message
Try that: --script1--- <?php include("TestClass.php"); session_start(); $obj = new TestClass(); $obj->setName('MyName'); $obj->display(); // outputs 'MyName' $str_object = serialize($obj); //-- You need to serialize an object ( see php.net manual ) in order to make an object working via session $_SESSION['obj'] = $str_object: //-- save serialized string in the session,note: Use $_SESSION instead of session_register(); header("Location: http://localhost/~lr/webProj/photoAlbum2/sessionReceiveObj.php"); // re-direct to script2 ---script 2---- <?php include("TestClass.php"); session_start(); $newObj = unserialize($_SESSION['obj']); //-- convert string back into object $newObj->display(); // MyName on Wednesday 29 November 2006 16:18, list arama wrote: > Why am I not able to access the obj name field in script 2? > > thanks in advance, > > --script1--- > > <?php > > include("TestClass.php"); > > session_start(); > session_register('obj'); > > ob_start(); > > $obj = new TestClass(); > > $obj->setName('MyName'); > $obj->display(); // outputs 'MyName' > > header("Location: > > http://localhost/~lr/webProj/photoAlbum2/sessionReceiveObj.php"); > // > re-direct to script2 > > ob_flush(); > > ?> > > ---script 2---- > > <?php > > include("TestClass.php"); > > session_start(); > > $newObj = $HTTP_SESSION_VARS['obj']; > > $newObj->display(); // no output, meaning no data? > > $newObj->setName('Michael'); > $newObj->display(); // outputs 'Michael' using obj methods > > ?>

« previous php.general (#245281) next »