php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #8104 session_register drops inner object
Submitted: 2000-12-04 17:19 UTC Modified: 2001-05-11 19:40 UTC
From: ronen at greyzone dot com Assigned:
Status: Not a bug Package: Class/Object related
PHP Version: 4.0.3pl1 OS: RedHat Linux 6.2
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please !
Your email address:
MUST BE VALID
Solve the problem:
34 + 35 = ?
Subscribe to this entry?

 
 [2000-12-04 17:19 UTC] ronen at greyzone dot com
When I have an object that I register to a session, it first describes the variable name, then the name of the class from which it was instantiated, and finally the property names and values for any of that objects properties.

A problem  exists when you try to register an object which has a different one nested within it.  In this case, no mention of the inner object is registered, and the next time you attempt to call it, you get an error message of trying to call a method of a undeclared object.

Ex:
=====================================
file class.test.php
<?
class inner {

	function get_name($first_name,$last_name) {
		$return $first_name." ".$last_name;
	}
}


class outer extends inner {
	var fname;
	var lname;	

	function outer ($fname,$lname) {
		$this->fname=$fname;
		$this->lname=$lname;
	}

	function x() {
		return $this->inner->get_name($this->fname,$this->lname);
	}
}
?>
=============================
file test1.html:

<?
require_once("class.test.php");
$testClass=new outer("jon","smith");
session_register("testClass");
?>


=============================
file test2.html:

<?
require_once("class.test.php");
session_start();
echo "FIRST_NAME: ".$testClass->fname."<br>";
echo "LAST_NAME: ".$testClass->lname."<br>";
echo "FULL_NAME: ".$testClass->x()."<br>";
?>



Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2000-12-04 17:25 UTC] jmoore@php.net
Duplicate of 8105
 [2001-05-11 19:40 UTC] sniper@php.net
submitted twice (other one closed) please ignore this email.
 
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Sat Jul 04 19:01:16 2020 UTC