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

Adding to an Int row in db
Hi, i have a database which houses all of the users of my site. One of the columns is for points whi

iterating through an array and escape each value independently.
I have a set up where the variable being escaped is an array and it needs to be iterated and escaped

Problem with HTTP Caching...?
Hi there, im trying to implement caching. But it doesn't always work.
I post it here because ther

Undefined Index Notice In Internet Explorer Only
I am getting the following notice:

QuoteNotice: Undefined index: jrox in /home/ycsn/public_h

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

contact form - output to page and email
I have the following in my controller:

$message['name'] = htmlentities(strip_tags(trim($_POST

Calling variables
I want to call this to my website but it doesn't display what I want it to,

Code: <h5&

parsing error
can anyone explain this syntax error:

Parse error: syntax error, unexpected T_IF

The e

PHP and Javascript
Hi Guys,

Im trying to load the contents of an html file into a text area for editing, this is

in php, link returns to the line
When I add a link in a php page, the link word returns to the line (as a
would do)

Examp

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