perl: ошибки

И всё прочее, что касается HTML
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

perl: ошибки

Непрочитанное сообщение icb » 2010-01-07 2:04:42

Раньше сайт работал нормально, после переноса на другой сервер перестал.
В логах пишет

Код: Выделить всё

[Wed Jan 06 22:49:34 2010] [error] [client 95.26.147.9] Useless use of a constant in void context at ../lib/login.cgi line 113.
[Wed Jan 06 22:49:34 2010] [error] [client 95.26.147.9] syntax error at ../lib/login.cgi line 551, near "( err"
Строки 113, 551

Код: Выделить всё

if($l eq '' or $p eq ''){ return err('Пустое имя пользователя или пароль.'); }
if($sid eq '' or $sid == 0){ return( err("Вы не вошли в систему.") ); }
Вроде обычный код, да и работал же.
Может надо какие модули перла доставить?
Сейчас стоит такое
p5-DBI-1.60.9 The perl5 Database Interface. Required for DBD::* modules
p5-Storable-2.21 Persistency for perl data structures
p5-gettext-1.05_2 Message handling functions
perl-5.8.9_3 Practical Extraction and Report Language

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: perl: ошибки

Непрочитанное сообщение ProFTP » 2010-01-07 2:20:03

что такое err?

это какая-то фнцкция может быть которая не подключенная...

вообще надо смотреть код, покажи или дай доступ...
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-07 2:47:00

что такое err?
Это объявлено ниже в файле login.cgi

Код: Выделить всё

sub err
{
	$errstr = shift;
	return (undef,undef);
}
вообще надо смотреть код
У меня нет к нему доступа :(
Да и говорят: "все же работало на старом сервере".

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: perl: ошибки

Непрочитанное сообщение ProFTP » 2010-01-07 2:54:20

можно попробовать так:

Код: Выделить всё

if($sid eq '' or $sid == 0){ 
return err("Вы не вошли в систему") ; 
}
а где 551 строка?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-07 3:24:46

можно попробовать так:
Ошибка осталась прежней, только на следующей строке.
а где 551 строка?
Не совсем корректно объеденил строки

113

Код: Выделить всё

if($l eq '' or $p eq ''){ return err('Пустое имя пользователя или пароль.'); }
551

Код: Выделить всё

if($sid eq '' or $sid == 0){ return( err("Вы не вошли в систему.") ); }
Везде вызывается err, но почему ошибки разные?

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: perl: ошибки

Непрочитанное сообщение ProFTP » 2010-01-07 3:28:05

2 строки по разному написаны

я не знаю что перед ними и что после....

попробуй так:

Код: Выделить всё

    if($sid eq '' or $sid == 0) { die "Вы не вошли в систему"; }
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-07 3:30:23

Ошибка пропала (551 строка).

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: perl: ошибки

Непрочитанное сообщение ProFTP » 2010-01-07 3:30:52

Код: Выделить всё

 Useless use of a constant in void context 
возвращается не определенное значение , это просто придуприждение
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-07 3:33:59

А почему вообще появляется эта ошибка?
Чем не нравится err?

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: perl: ошибки

Непрочитанное сообщение ProFTP » 2010-01-07 3:37:30

точно сказать не могу....
надо попробовать
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-07 4:45:50

Просто править код чужих сайтов особо не получится :(
Да и ошибка скорее всего связана действительно с переездом.

Аватара пользователя
thefree
лейтенант
Сообщения: 980
Зарегистрирован: 2008-12-29 9:23:19
Откуда: Весёлая Страна

Re: perl: ошибки

Непрочитанное сообщение thefree » 2010-01-07 19:48:30

Код: Выделить всё

sub err
{
   $errstr = shift;
   return (undef,undef);
}
Это точно полностью ВСЯ функция?
Правильнее будет

Код: Выделить всё

sub err()
{
   $errstr = @_;
   return (undef,undef);
}
if(!defined($l) or !defined($p)) { return err("Пустое имя пользователя или пароль."); }
if(!defined($sid) or $sid eq 0){ return err("Вы не вошли в систему."); }
Версия perl изменилась у Вас.
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-07 21:40:19

Это точно полностью ВСЯ функция?
Да.
Версия perl изменилась у Вас.
Да.
Можно заставить старые скрипты работать без переделки?

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-08 2:51:57

Версия perl поменялась с 5.8.8 на 5.8.9 - не должно быть так критично для скриптов.

Аватара пользователя
thefree
лейтенант
Сообщения: 980
Зарегистрирован: 2008-12-29 9:23:19
Откуда: Весёлая Страна

Re: perl: ошибки

Непрочитанное сообщение thefree » 2010-01-08 16:54:34

icb писал(а):Версия perl поменялась с 5.8.8 на 5.8.9 - не должно быть так критично для скриптов.
не должно быть, но еще есть модули ... и бла бла бла ... То что я вам порекомендовал помогло?
Не судите меня строго, Я не волшебник, а только учусь!
http://planetbsd.ru - RSS-агрегатор *BSD по Рунету

icb
лейтенант
Сообщения: 751
Зарегистрирован: 2008-07-15 16:11:11

Re: perl: ошибки

Непрочитанное сообщение icb » 2010-01-08 19:12:19

То что я вам порекомендовал помогло?
Да, хватило убрать скобки у return
Но вылезла куча других ошибок :(

Код: Выделить всё

print() on closed filehandle MEM at
readline() on closed filehandle MEM at