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

Website Direction...
I recently used this code to try and make it so the page loads as http://www.domain.com/ when you ty

foreach loop, assistance request
I would like some guidance on the usage of foreach as I try to parse through a large database and wh

Operating System
How in PHP or other language can I detect Operating system, ie Windows XP Home, Windows 7 Ultimate,

ORA-01017: invalid username/password; logon denied
Dear All,

I am facing problem in taken backup from db13 it comes up with the following l

I need to increse 6hours more, and i don't know how???
I need to increse 6hours more, and i don't know how???
<tr>
<t

Xacute search within SQL results
I have a query that is pulling data, and I want to return a specific value from the results of that

Multi dimensional arrays
If I put in this code:

1
2
3
4
5
6
7
8
9
10
11
12
13<

Add User script "Could not execute query"
This should be an easy script but I can't get it to run. Can someone please help me?

<

Multiple Dropdown Selections
I have a form that let's a user insert a page with the ability to select categories. I want them to

Syntax Help
Code:


im having trouble with that code snipped
Parse error: syntax error, unexpec

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