|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Igor Nikolaev 2:5030/266 03 May 2000 21:58:17 To : "Denis Poznyakov" Subject : Re: some q -------------------------------------------------------------------------------- Denis Poznyakov <pvdenis@puzo.net> wrote: >> PS: вот так неграмотно пишут свои скрипты некоторые. а потом другие у них > Кто не грамотно пишет ? :-/ > Скачай и посмотри Я скачал, посмотрел, действительно неграмотно. Hеудовлетворительно написано. use strict; и `perl -w` вообще рядом не валялись. Если их приложить, то не отходя от кассы получаем: Useless use of a constant in void context at pvdgb.pl line 266. Name "main::message" used only once: possible typo at pvdgb.pl line 259. [skip пару десятков глюков] Use of uninitialized value at pvdgb.pl line 235. Use of uninitialized value at pvdgb.pl line 313. Затем в подпрограммы полез. Лучше бы не лазил. Разбор url просто на редкость крив (функция chehttp), в частности символ '%' весьма част в url'ях, а список протоколов не ограничивается http. Проверка почтового адреса вообще никуда не годится, всё таки rfc822 ещё никто не отменял ;-) Для многострочных document here принято использовать конструкцию вида print <<END; текст END нечто вида print qq~много чего~ смотрится жутко и провоцирует на ошибки (в html коде '~' - рядовой символ... Зачем использовать qq а потом внутри упорно трахаться экранируя кавычки мне вааще не понять ;-) Hо это всё цветочки - нечто начиная с sub zapisi { open (FILE,$gb_db); @GB=<FILE>; close(FILE); $SIZE=@GB; if ($SIZE>$max_zap) { open (FILE,">$gb_db"); for ($i=$SIZE-50;$i<=$SIZE;$i++) { $_=$GB[$i]; print FILE $_; } close(FILE); open (FILE,$gb_db); @GB=<FILE>; close(FILE); $SIZE=@GB; } ... просто жуть :-( Позорище. Если хочешь подробностей, то приготовь к воздействию необходимые компоненты и изложи русским языком что же именно ты хотел написать. P.S. Перекоировки нужно делать над ссылками, те sub koitowin { return $_[0] =~ tr(кои)(вин); } Твоя реализация крайне неэффективна (требует памяти и производит кучу лишних действий). Вдобавок всё это нафиг никому не нужно - коировками должен заниматься клиент, а не сервер. Дело сервера просто выставить *правильную* кодировку в charset'е. Ты бы разобрался, заодно и свою бы страничку починил, чтобы русские буквы, а не кракозябры печатала ;-) > Denis Poznyakov -- И --- ifmail v.2.12.os.sensi * Origin: tablefaced (2:5030/266@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/1341699ed1353.html, оценка из 5, голосов 10
|