Неустранимая ошибка PHP: вызов неопределенного метода mosMenu :: mosDBTable () - PullRequest
1 голос
/ 22 августа 2010

У меня есть веб-сайт Mambo CMS, размещенный на 000webhost. Сайт работает на Mambo 4.6.2. и PHP Версия 5.2.13 установлена ​​на веб-сервере 000webhost. Сайт работает нормально.

Я обновил ОС своей машины для разработки до Ubuntu 10.04 с тех пор, как последний раз работал на сайте, и сайт больше не работает. На этой машине установлена ​​ версия PHP 5.3.2-1ubuntu4.2 .

Я прогуглил 'PHP Fatal error: вызов неопределенного метода mosMenu :: mosDBTable ()', что привело меня к этой теме на форумах Mambo .

В приведенной выше ветке предлагается использовать следующие настройки в php.ini: error_reporting = E_ALL | ~E_STRICT и zend.ze1_compatibility_mode true. Я попробовал это, что привело к 17 дополнительным ошибкам:

PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/index.php on line 170
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/index.php on line 270
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/index.php on line 323
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/index.php on line 328
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/database.php on line 777
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 407
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 426
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 533
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 1148
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 1676
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 2615
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 2621
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 2627
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 2633
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 2639
PHP Deprecated:  Assigning the return value of new by reference is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 2668
PHP Deprecated:  Function ereg_replace() is deprecated in /home/mike/Public/mambo/includes/core.classes.php on line 2978
PHP Fatal error:  Call to undefined method mosMenu::mosDBTable() in /home/mike/Public/mambo/includes/core.classes.php on line 897

Тот же код выполняется без ошибок на сервере 000webhost (на котором также установлен PHP 5). Я хотел бы знать, можно ли настроить PHP 5 / Apache 2 для запуска устаревшего кода без редактирования самого кода?

Спасибо
Mike

1 Ответ

0 голосов
/ 22 августа 2010

Возможно, это не лучший ответ для вас, но я бы не стал больше использовать Mambo после прочтения этой темы .

Этот парень "andphe" является администратором и программистом проекта Mambo, и он порекомендовал оператору изменить настройки error_reporting.Любой PHP-программист, достойный их внимания, не ожидал бы, что это исправит фатальную ошибку, потому что все, что делает error_reporting, это скрывает сообщения.Если у вас есть фатальная ошибка, ваш код все равно не будет работать, независимо от уровня сообщения об ошибках.Вы просто не сможете видеть сообщения об ошибках.

Подобная ошибка не внушает доверия проекту.Я бы просто пошел дальше и использовал другую CMS, такую ​​как Joomla (которая является форком Mambo) или Drupal , возможно, самая популярная CMS на основе PHP в настоящее время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...