![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Paher |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 18.8.2009 Репутация: нет Всего: нет |
Добрый день!
В логах апача при выполнении cgi-скриптов на Perl появляются сообщения Use of unitialized value in pattern match (m//) at (eval 20 ) in line 4 Понятно, что используется что-то неинициализированное, но что и где - непонятно. Если кто сталкивался, подскажите, где искать ошибку. А то не указан даже скрипт, в котором ошибка появляется |
|||
|
||||
| dva300 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 17.2.2010 Где: Москва Репутация: нет Всего: 1 |
как не понятно где ? в регулярке где же еще. дайте посмотреть на кусок кода пока в рамках цикла в котором используете регулярку (если не жалко то давайте весь код) --------------------
Участник движения Культура Вождения |
|||
|
||||
| Paher |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 18.8.2009 Репутация: нет Всего: нет |
В том-то и дело что используется множество скриптов, регулярки используются довольно активно, а в каком скрипте - лог не показывает. К тому же смущает часть "(eval 20 ) in line 4". В 4 строке всех скриптов нигде регулярка не используется
|
|||
|
||||
| Jimy |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 4.7.2010 Репутация: нет Всего: 3 |
не знаю сократит ли это поиски, но все таки:
ищите в скриптах написанных под mod_perl |
|||
|
||||
| dva300 |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 17.2.2010 Где: Москва Репутация: нет Всего: 1 |
а eval там есть ? странно конечно что у вас в логе не пишет в каком файле. может надо Apache покрутить на этот счет ? Это сообщение отредактировал(а) dva300 - 30.7.2010, 14:59 --------------------
Участник движения Культура Вождения |
|||
|
||||
| shamber |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1422 Регистрация: 5.9.2006 Где: Россия Репутация: нет Всего: 18 |
Paher, а вываливается всегда одно и тоже?
Добавлено через 24 секунды можно ведь и под отладчиком покрутить данные..... |
|||
|
||||
| Paher |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 18.8.2009 Репутация: нет Всего: нет |
Я не Perl-программист, можно подробнее про отладчик?
P.S. eval тоже нет. Кстати, на работе скрипта никак не сказывается, он делает все, что нужно. Единственно, загрязняет лог |
|||
|
||||
| Jimy |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 4.7.2010 Репутация: нет Всего: 3 |
Это сообщение всего лишь предупреждение а не сообщение об ошибке. Отключить вывод предупреждений можно убрав use warnings; или ключ -w |
|||
|
||||
| Paher |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 18.8.2009 Репутация: нет Всего: нет |
Да, это я понял. но отключать сообщения, имхо, не слишком разумно. С другой стороны вы натолкнули меня на мысль поочередно отключать вывод сообщений у скриптов, так хотя бы определю, что за скрипт. Спасибо
|
|||
|
||||
| dva300 |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 17.2.2010 Где: Москва Репутация: нет Всего: 1 |
вы в этом уверены ? убирать -w не советую. логические ощибки искать гораздо тяжелее чем синтаксические. пример: строка файла N:N:N:N в программе
человечекий фактор - итог строка №2 (нет отного поля) N:N:N если все поля являются фунциональными, например, Фамилия, Имя, Очество, зарплата то во втором случае вы получите отсев одной персоны по причине отсутствия данных (переменная будет не определена) и как следствие какие-либо операции с ней выполенны не будут - например, банальный подсчет. например:
никогда не даст вам полную картину. то данную логическую ошибку вы долго еще ловить будите. --------------------
Участник движения Культура Вождения |
||||||
|
|||||||
| Paher |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 155 Регистрация: 18.8.2009 Репутация: нет Всего: нет |
Отключать и не хотел, хотел только найти скрипт, в котором ошибка возникала. Помогло, кстати
|
|||
|
||||
| shamber |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1422 Регистрация: 5.9.2006 Где: Россия Репутация: нет Всего: 18 |
Paher, eval нашелся ?
|
|||
|
||||
| Jimy |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 177 Регистрация: 4.7.2010 Репутация: нет Всего: 3 |
В выводе предупреждений от рабочих скриптов смысла никакого, только лишняя нагрузка. Хотя в процессе разработки может помочь конечно.
В приведенном примере все таки некорректные входные данные, а не логическая ошибка. В отлове логических ошибок warnings уж точно не помощник. |
||||
|
|||||
| dva300 |
|
||||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 220 Регистрация: 17.2.2010 Где: Москва Репутация: нет Всего: 1 |
это если данные статичны. а если нет ?
--------------------
Участник движения Культура Вождения |
||||||||
|
|||||||||
| KSURi |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 887 Регистрация: 8.6.2006 Где: Russia Репутация: 2 Всего: 27 |
А попробуйте так:
Я не уверен, что прокатит, но попробовать стоит. -------------------- Died at Life.pl line 21 |
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |