Re: [PHP] Re: Objects in Arrays (without the READ prompt)

2005-05-06 Thread Jochem Maas
Mathieu Dumoulin wrote:
Stuart Nielson wrote:
Sorry to everyone about the stupid READ notification on the posting.  I
some people on this list see it as sport/duty to send a reply to all
read-notifications from list posts... I wonder how many you got :-)
completely forgot that it was enabled.  This one shouldn't have that
problem.
I am using PHP version 4.3.4.
I'm creating an authorization module that uses a users object, that
includes the username, usertype, etc.  I want to store this in a session
variable (i.e. $_SESSION['objects']['auth'] = new Authorization();) so
that I can keep the information from page to page.  However, I get an
error that it is an incomplete class everytime I try to access a
function from the object like this:
$_SESSION['objects']['auth']-Login();.  It works fine when it's not
stored in the array.  Is this a PHP 4 issue?  Or is there something I'm
doing wrong?
Any pointers would be helpful.  If this doesn't work, I'll have to
rework things to just store in arrays.
very general pointer: google.
e.g.: http://www.google.nl/search?q=php4+objects+in+session

Stuart
Objects can't be stored in sessions, what you could do is register a 
BULLSHIT. (or maybe you use a version of PHP thats before my time, like say 
3.0)
shutdown function using register_shutdown_function(functionname) and 
create a custom function that would use serialize() to serialize your 
object.

When the system starts a new you could unserialize() this session 
variable back into an array.
anything in the $_SESSION global will automatically be serialized.
BUT in order for PHP to restore you object fully you MUST include the
class definitions of all object you are storing in the session BEFORE
you call session_start().
I'll bet that if you did a var_dump() of  $_SESSION['objects']['auth']
without changing/moving the ness. include statements you will find
that it is an object of type 'PHP_Incomplete_Object' (or something similar)...
and that all the member variables are actually set - its just that no
methods are defined for that object because the class definition was
not available at the time the object was unserialized by php.

Mathieu
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[PHP] Re: Objects in Arrays (without the READ prompt)

2005-05-05 Thread Mathieu Dumoulin
Stuart Nielson wrote:
Sorry to everyone about the stupid READ notification on the posting.  I
completely forgot that it was enabled.  This one shouldn't have that
problem.
I am using PHP version 4.3.4.
I'm creating an authorization module that uses a users object, that
includes the username, usertype, etc.  I want to store this in a session
variable (i.e. $_SESSION['objects']['auth'] = new Authorization();) so
that I can keep the information from page to page.  However, I get an
error that it is an incomplete class everytime I try to access a
function from the object like this:
$_SESSION['objects']['auth']-Login();.  It works fine when it's not
stored in the array.  Is this a PHP 4 issue?  Or is there something I'm
doing wrong?
Any pointers would be helpful.  If this doesn't work, I'll have to
rework 
things to just store in arrays.

Stuart
Objects can't be stored in sessions, what you could do is register a 
shutdown function using register_shutdown_function(functionname) and 
create a custom function that would use serialize() to serialize your 
object.

When the system starts a new you could unserialize() this session 
variable back into an array.

Mathieu
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php