Jump to content

Getting warning/notice Trying to get property of non-object in layout.phtml


colap

Recommended Posts

Getting notice/warning in this line:

Notice: Trying to get property of non-object in C:\Program Files\Zend\Apache2\htdocs\mysite\application\layouts\scripts\layout.phtml on line 19

echo $this->navigation()->menu()->setAcl($obj_menuacl)->setRole($_auth->getStorage()->read()->uid);

<head>
<?php echo $this->headScript()->appendFile($this->baseUrl() . '/js/jwplayer.js'); ?>
<?php echo $this->headScript()->appendFile($this->baseUrl() . '/js/swfobject.js'); ?>
<?php echo $this->headLink()->prependStylesheet($this->baseUrl().'/css/topmenu.css'); ?>
</head>

<?php
$flXml=new Zend_Config_Xml(APPLICATION_PATH.'/configs/navigation.xml','nav');
$container = new Zend_Navigation($flXml);
Zend_Registry::set('Zend_Navigation', $container);
?>

<div id="nav-menu">
<?php
$obj_menuacl=new Model_MenuAcl();

$_auth=Zend_Auth::getInstance();

echo $this->navigation()->menu()->setAcl($obj_menuacl)->setRole($_auth->getStorage()->read()->uid);
echo $this->loggedInAs();
echo '<br><br>';
echo 'You are in: ' . $this->navigation()->breadcrumbs()->setLinkLast(false)->setMinDepth(0)->render();
?></div>
<div class="mainbody"><?php echo $this->layout()->content; ?></div>
<br />

Wow, you're trying to do a lot in one line...whenever I get these types of errors on one-line-wonders that I try, I usually break it down to see which function is returning a non-obect:

$nav = $this->navigation();
$menu = $nav->menu();
$menu->setAcl($obj_menuacl);
$storage = $_auth->getStorage();
$read = $storage->read();
$uid = $read->uid;
$menu->setRole($uid);

Use this to figure out which line is returning the non-object. Once you figure out where it is, you can reconstruct it back to the way you had it (after you fix the bad object) if you'd like.

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.