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
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
(description)
Block user comment
Status: Assign to:
Package:
Bug Type:
Summary:
From: ronen at greyzone dot com
New email:
PHP Version: OS:

 

 [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-2019 The PHP Group
All rights reserved.
Last updated: Sun Nov 17 07:01:34 2019 UTC