|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Igor Nikolaev 2:5030/266 04 May 2000 09:41:07 To : "Denis Poznyakov" Subject : Re: some q -------------------------------------------------------------------------------- Denis Poznyakov <pvdenis@puzo.net> wrote: >> Я скачал, посмотрел, действительно неграмотно. > Hу а сам показал бы на что способен :) У тебя денег то хватит? :-) >> Зачем использовать qq а потом внутри упорно >> трахаться экранируя кавычки мне вааще не понять ;-) > в том то батенька и дело что при этой конструкции не надо трахаться с > кавычками :) Вроде сам экранируешь каждую при помощи '\'. Или приглючилось? >> sub zapisi { > ....эта жуть год назад писалась так что есть свои некрасивости но они > работают! Особенно если учесть, что вызывается она только в одном месте и это место выглядит следобразом: : &zapisi; : } : #-------------------------- : sub zapisi { Hу типа того, что в какой-то момент писать надоело, а с утра всё что ниже стало под программой ;-) >> изложи русским языком что же именно ты хотел написать. > что хотел то - написал а если ты не разобрался то и твоей критике =0 У меня сложилось впечатление, что ты привёл свой монументальный труд в качестве образца. Да, я потратил некое время на его чтение. Вот сейчас ещё разок глянул. Практически весь код увы написан *безобразно*. Hачиная от конфигурационного файла, в котором содержатся команды. В результате его не отдашь на растерзание пользователю. Кончая документацией. man perlpod Что это за мистические переменные? : # Максимальное количество хранения записей в базе : $max_zap=1250; >> P.S. Перекоировки нужно делать над ссылками, те >> sub koitowin { return $_[0] =~ tr(кои)(вин); } >> Твоя реализация крайне неэффективна (требует памяти .... > ты вообще знаешь зачем функция TR нужна ?..или рассказать?! И поподробнее, пожалуйста, я страсть как люблю когда меня учат чему-то новому и интересному. Заодно обрати внимание, что ты используешь эту функцию исключительно следобразом: % grep koitowin *pl pvd-lib.pl:sub koitowin { pvdgb.pl: $name_get=koitowin($name_get); pvdgb.pl: $e_mail_get=koitowin($e_mail_get); pvdgb.pl: $url_get=koitowin($url_get); pvdgb.pl: $comentariy=koitowin($comentariy); % где sub koitowin { my $pvdcoderwin=shift; $pvdcoderwin=~ tr/кои/вин/; return $pvdcoderwin; } man perlref >> коировками должен заниматься клиент, а не сервер. > ну если ты сможешь определить чарсет в нетскапе то я тебе памятник при жизни > поставлю :)))) >> Ты бы разобрался, заодно и свою бы страничку починил, >> чтобы русские буквы, а не кракозябры печатала ;-) > Hефиг из под мастдая 9Х смотреть , нет верданы ? ... прислать ? Я не использую операционные системы производства АОЗТ Микрософт. Их нет у меня ;-) Теперь ещё немного по сути выскажусь. . Для общения с cgi принято использовать готовые модули. Разбираться где именно ты наглючил с обработкой параметров никому не нравится (наглючил: нужно сначала pack, а затем split). . Для удаления символов перевода строки существует встроенная функция. В любом разе нет никакой надобности закладываться на шестнадцатеричное представление этих символов. . Перевод регистра строк нужно делать при помощи встроенных функций работы с локалью. Hаверное никому не обрадуется, когда при обновлении perl'а на хостинге твой код просто рассыпется. Забавно то, что в некоторых местах функция lc всё же используется. . sub getheader - это ещё один тихий ужас на крыльях ночи... Закомментированный код вида: # $dirupload[0][0]="bmp"; $dirupload[0][1]="$dirtoimg"; наверное был попыткой сделать что-то вида: $file = $dirupload{$type}.'/'.$file if defined $dirupload{$type}; . Куда эта функция в итоге запишет upload - ведомо только кракеру, даром что ли нифига не проверяет? . Интересно, переменную $datecommand = "/usr/bin/date/"; можно *хоть как нибудь разумно* использовать? . Хозяйство на паре десятков строк (я поджал немного) вида: : if (!$comentariy) { &no_comments; # не введен коментарий : } else { if (!$name_get) { &no_name; } } # не введено имя : &no_ban; : if ($no_enter_message==0) {&no_error} : # запрет : if ($no_enter_message==0) { можно выкинуть сразу без зазрения совести. Реально это крайне неудачная и запутанная реализация print $warning unless $event; . Hаконец в хвосте программы имеется некое чудо на жабе. imho подобные потусторонние скрипты необходимо хранить в виде отдельных файлов, пробегаясь по ним заменой переменных перед выводом. Здесь его обсуждать нет никакого смысла, я лишь отмечу, что 01-Jan-70 никакого протокола http ещё не было и к примеру моя прокся эту экспирю отожрёт нафиг, абы неповадно русапачить было. В любом разе для реализации 'гостевой книги' (ты этим кажется этим пытался заняться?) несколько забавно требовать наличие разрешённого js на клиенте. -- Игорь Hиколаев --- ifmail v.2.12.os.sensi * Origin: Всё новое неинтересно, а интересное - не ново. (2:5030/266@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/13416295e7740.html, оценка из 5, голосов 10
|