За последние 24 часа нас посетил 17831 программист и 1704 робота. Сейчас ищут 994 программиста ...

С ошибкой не могу разобраться

Тема в разделе "PHP для новичков", создана пользователем Error202, 25 апр 2016.

Метки:
  1. Error202

    Error202 Новичок

    С нами с:
    1 дек 2014
    Сообщения:
    18
    Симпатии:
    0
    Здравствуйте!

    Достался довольно длинный запутанный код в наследство, в лог вылетает ошибка
    Код (Text):
    1. PHP Fatal error:  Class 'modules' not found in /home/classes/code.php on line 156...
    В 156 строке: $module = new $module_name();

    За одно обращение к скрипту по этой строке пробегается компилятор несколько раз.
    Для проверки в 155 строке написал: echo "!$module_name!";

    Теперь после отработки скрипта (он отрабатывает весь) вижу !stat1! и !stat2!. Больше ничего, никаких modules нет...
    Оба класса существуют и отрабатывают...

    Откуда может взяться такая ошибка?
     
    #1 Error202, 25 апр 2016
    Последнее редактирование: 25 апр 2016
  2. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    Посмотри где работа идёт с $module_name и её инициализация.
     
  3. Error202

    Error202 Новичок

    С нами с:
    1 дек 2014
    Сообщения:
    18
    Симпатии:
    0
    Там на пару строк выше объявление функции: function prepare($module_name) { ...
    Вызывается функция, по идее, всего 2 раза... для stat1 и stat2

    Но ведь если бы $module_name содержало "modules", я бы перехватил это в 155 строке?

    P.S. Причем забыл сказать, с одного запуска таких ошибок появляется 2, одинаковых
     
  4. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    попробуй с помощью grep/wingrep пройтись по файлам и поискать modules, можно и в базу заглянуть.
    По идее, всё бы перехватлось. Но можно и пропустить пару нюансов в скрипте.
     
  5. Error202

    Error202 Новичок

    С нами с:
    1 дек 2014
    Сообщения:
    18
    Симпатии:
    0
    Понял, спасибо! Буду ковырять
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    с таким вопросом лучше заплатить, чем пытаться понять и сделать самому.
     
  7. Error202

    Error202 Новичок

    С нами с:
    1 дек 2014
    Сообщения:
    18
    Симпатии:
    0
    Разобрался...

    Влепил в 155 строку
    Код (Text):
    1. if ($module_name == 'modules') {
    2.             $e = new Exception();
    3.             file_put_contents(ROOT.DS.'super.txt', print_r($e->getTraceAsString(), true));
    4.         }
    Добрался до еще одного использования функции, там влепил также вывод в файл URL, который на данный момент в браузере...
    домен получает запрос, если файла физически нет, то обработкой занимается скрипт...
    Так в моем случае скрипт отработал, показал статистику... А одной мелкой картинки физически нет... Вот там уже новый запрос, который и выдавал ошибки...

    Будем работать... Спасибо!