Thousand Hound Posted October 5, 2006 Posted October 5, 2006 Hi all, I am receiving the following error on my site. Up until now, it has been fine and I don't think I've changed anything to cause it. Does anyone know what the problem might be. Fatal error: Unknown(): The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition navigationhistory of the object you are trying to operate on was loaded _before_ the session was started in /home/thousand/public_html/sales/includes/application_top.php on line 309 This is what is on line 309. $navigation->add_current_page(); Thanks Mia
user99999999 Posted October 5, 2006 Posted October 5, 2006 Check in Admin->Tools->Server Info for session.auto_start It should be off. You can change it in php.ini or .htaccess
Guest Posted October 5, 2006 Posted October 5, 2006 Hi all, I am receiving the following error on my site. Up until now, it has been fine and I don't think I've changed anything to cause it. Does anyone know what the problem might be. Fatal error: Unknown(): The script tried to execute a method or access a property of an incomplete object. Please ensure that the class definition navigationhistory of the object you are trying to operate on was loaded _before_ the session was started in /home/thousand/public_html/sales/includes/application_top.php on line 309 This is what is on line 309. $navigation->add_current_page(); Thanks Mia I found two solutions to this problem using google... Now i don't know if these work but they seem to be the most effecient! After wresting briefly with this problem, I found the solution. The problem is that in some configurations (at least mine), the navigation history section in "application_top.php" doesn't catch the possibility that the session "navigation" variable is registered and the PHP version running is 4 or above. I'm really not quite sure what caused this huge oversight on the part of the developers (with all due respect). Change the nagivation history chunk of code to read: CODE // navigation history if (tep_session_is_registered('navigation')) { if (PHP_VERSION < 4) { $broken_navigation = $navigation; $navigation = new navigationHistory; $navigation->unserialize($broken_navigation); } else { $navigation = new navigationHistory; } } else { tep_session_register('navigation'); $navigation = new navigationHistory; } $navigation->add_current_page(); and it should work just fine. or do this I'm guessing if you close all your browser windows then go back to the site you get a msg at the top that says you need to disable session.auto_start in php.ini then reboot the server. This is your problem and to fix it you need to put a .htaccess file in the root dir of your site. In the .htaccess file it needs this code: php_flag session.auto_start 0 Try doing that and it should fix the problem. Good Luck Jon
Thousand Hound Posted October 7, 2006 Author Posted October 7, 2006 Thanks so much all. That seems to have fixed the problem! Mia
Recommended Posts
Archived
This topic is now archived and is closed to further replies.