Attempt to assign property of non-object in...


Posted on 16th Feb 2014 07:03 pm by admin

I'm having issues with the following function in PHP 5...

function getTreeWithChildren()
{
Did you know?Explore Trending and Topic pages for more stories like this.
$category_id = $this->fields['id'];
$parent_id = $this->fields['parent'];

$this->DB->build( array( 'select' => join(',', $this->getFields()),
'from' => $this->table,
'order' => $this->fields['sort']
) );
$this->DB->execute();


// create a pseudo root level object
$root = new stdClass;
$root->$category_id = 0;
$root->children = array();

$arr = array($root);

// populate array and create empty child array
while ($row = $this->DB->fetch()) {
$arr[$row->$category_id] = $row;
$arr[$row->$category_id]->children = array();
}

// build child data
foreach ($arr as $id => $row) {
if (isset($row->$parent_id))
$arr[$row->$parent_id]->children[$id] = $id;
}

return $arr;
}



I'm getting the error

QuoteAttempt to assign property of non-object in ... on line 391

which is...

$arr[$row->$category_id]->children = array();

I've tried typecasting "$this->DB->fetch()" to an object with...

while ($row = (object) $this->DB->fetch()) {

but get a maximum execution time exceeded error instead.

The code was originally written for PHP 4 so I suspect it might be a way the objects are handled and the use of stdClass()?

I'd be extremely grateful if somebody could give me pointers to make this PHP5 compatible (5.2.9)? Thanks in advance
No comments posted yet

Your Answer:

Login to answer
84 Like 54 Dislike
Previous forums Next forums
Other forums

Anti Spam Code Problems
Ok where do i start? Probably by telling you I have very little working knowledge of PHP and that I

How to Detect it is public_html or httpdocs?
How to check whether it is cPanel or Plesk?

If it found public_html perform <?php incl

RadioButtonList item spacing
I have a RadioButtonList and I can't put any spacing between the items. They are arranged verticall

Need a Timecode Class...
Not a Time Stamp, Time Code. Format is a bit different. HH:MM:SS:FF where FF is Frames. I dont re

Please help - should be a simple fix.. driving me nuts
Everything seemed to be working fine. I have a table, it alphabetically lists a bunch of cities and

PHP and MySQL Question/Help
I have a MySQL db with all my servers and all their details like server name, IP, OS, RAM etc etc 26

php slowing my site?
Hi all,

I think that one of the reasons that my site doesn't work fast is that the code is ve

Taylor Series Function
So I am working a a project for my intro C++ class, and I am having some trouble with a function for

A rank users order by points
I want to make an insert from table 'rank' , with number (rank) from the cod blow, to fild users.ran

Function
How can I make this function that once you click the link in the code it takes you to a new page wit

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash