[Perl] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. emmy

    emmy Member

    Joined:
    12 Oct 2009
    Messages:
    76
    Likes Received:
    17
    Reputations:
    8
    VirtualBox + Debian

    su -
    aptitude install libio-socket-ssl-perl

    Все зависимости найдутся автоматически
     
  2. mazaxaka

    mazaxaka Elder - Старейшина

    Joined:
    15 Feb 2008
    Messages:
    268
    Likes Received:
    35
    Reputations:
    0
    как в перл перекодировать 0,6,84803177 в 0%2C6%2C84803177 тоесть заменить символы на их код
     
  3. emmy

    emmy Member

    Joined:
    12 Oct 2009
    Messages:
    76
    Likes Received:
    17
    Reputations:
    8
    URI::Escape
     
  4. warlock000

    warlock000 New Member

    Joined:
    6 Sep 2009
    Messages:
    36
    Likes Received:
    0
    Reputations:
    0
    Привет всем ещё раз, сабж:

    1. Каким образом с сайта можно парсить только свежие объявления, на самом сайте нету даты размещения объявлений, как вариант можно выгружать спаршенные объявления в базу и сортировать их при импорте или в нутри но хотелось бы что бы они на выходе из скрипта (парсере) он выгружал данные в массив, также выгружал массив из файла и сверял бы их, если записи нет то не добавлял, если запись есть то добавлял, погуглил для перла ничего такого не нашел, хелп))

    2. И как сделать проверку на дубли объявлений, к примеру по номеру телефона, если телефонных одинаковых телефонных номеров больше чем 5 то все строки с этими номерами удаляются
     
  5. evge_mir

    evge_mir New Member

    Joined:
    2 Mar 2011
    Messages:
    0
    Likes Received:
    3
    Reputations:
    5
    Не могу запустить perl-скрипт на денвере.
    Установил пакет расширения: ActivePerl 5.8
    Файл index.pl положил в директорию home\site.ru\cgi-bin\index.pl
    Ввожу в адресной строке _http://site.ru/cgi-bin/index.pl , а мне говорят, что "Сервер не найден". Пробовал меня расширение с .pl на .cgi , не помогает.
    В чем может быть проблема?
    З.Ы. Прошу сильно не пинать, т.к. в перле я полный ноль, никогда не приходилось с ним работать. Если объясните, что я делаю не так, буду благодарен)
     
  6. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    рестарт сделай должно заработать перезагрузись после установки
    Расширение менять не надо
     
  7. evge_mir

    evge_mir New Member

    Joined:
    2 Mar 2011
    Messages:
    0
    Likes Received:
    3
    Reputations:
    5
    перезагружался, не помогает. Кстати, положил файл скрипта в home\cgi-glob (оттуда нормально работает test.pl, который идет в комплекте для тестирования), в адресной строке набираю http://localhost/cgi-glob/index.pl - на экране появляется текст скрипта, в то время как тестовый работает нормально.
    Кстати, мой скрипт начинается вот так:

    может как-то из командной строки можно запустить?
     
    #1867 evge_mir, 28 Aug 2011
    Last edited: 28 Aug 2011
  8. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    не может быть чтоб не работатло сделай все внимательно должно все работать

    из командной строки можно запустить perl C:\script\index.pl

    В компиляторе скрипт запускал ошибки может есть какие ??
     
    #1868 TikTik, 28 Aug 2011
    Last edited: 28 Aug 2011
  9. evge_mir

    evge_mir New Member

    Joined:
    2 Mar 2011
    Messages:
    0
    Likes Received:
    3
    Reputations:
    5
    мои действия такие: запускаю денвер, ввожу в адресной строке http://site.ru/cgi-bin/index.pl, всё.
    Попробовал запустить из адресной строки как указано выше, получил алерт "Windows не удалось найти `perl`. Проверье, что имя было введено правильно и повторите попытку..."
     
  10. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    код скрипта секретный может выложишь ?
     
  11. evge_mir

    evge_mir New Member

    Joined:
    2 Mar 2011
    Messages:
    0
    Likes Received:
    3
    Reputations:
    5
    Вот:

    Но другие тоже не работают(
     
  12. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2


    Пуск >> Выполнить perl C:\script\script.pl
     
    #1872 TikTik, 28 Aug 2011
    Last edited: 28 Aug 2011
  13. evge_mir

    evge_mir New Member

    Joined:
    2 Mar 2011
    Messages:
    0
    Likes Received:
    3
    Reputations:
    5
    Не хочет, может после установки ActivePerl надо было еще че-нить настроить?

    TikTik, если так ничего и не получится, я могу тебе завтра в личку отписать? Через TeamViewer может посмотришь сам что к чему? Если не в напряг конечно)
     
  14. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    Да я сам новичек только учусь

    Мне кажется ты даже сам незнаешь что должен делать этот скрипт вот обьясни мне что по твоему должен делать скрипт ?

    скачай http://padre.perlide.org/download.html

    там и IDE Padre
    запускай а лучше начать учить основы как я :)
    А так с наскока нечерта не получится
     
    #1874 TikTik, 28 Aug 2011
    Last edited: 28 Aug 2011
  15. evge_mir

    evge_mir New Member

    Joined:
    2 Mar 2011
    Messages:
    0
    Likes Received:
    3
    Reputations:
    5
    не я его писал, я не программер) он ищет шеллы
     
  16. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    вот 2 строки которые должны быть в скрипте чтоб небыло ошибок при запуске ОШИБКА 500

    так должен начинатся скрипт
    Code:
    #!/usr/bin/perl -w
    use CGI::Carp qw(fatalsToBrowser);
    print "Content-type: text/html\n\n";
     
  17. evge_mir

    evge_mir New Member

    Joined:
    2 Mar 2011
    Messages:
    0
    Likes Received:
    3
    Reputations:
    5
    все равно не работает падла такая
     
  18. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    Скрипт не предназначен для работы через браузер.
     
  19. TikTik

    TikTik Member

    Joined:
    20 Feb 2009
    Messages:
    241
    Likes Received:
    12
    Reputations:
    2
    вот форма
    Code:
    <html><head>
    <TITLE><H4>Моя Первая Форма</H4></TITLE>
    <head>
    <body>
    <FORM NAME = "form_example" ACTION = "/cgi-bin/form1.cgi" METHOD = "POST">
    Имя:     <INPUT TYPE = "TEXT" NAME = "fname"><BR>
    Фамилия: <INPUT TYPE = "TEXT" NAME = "lname"><BR>
    <BR>
    Ваш любимый цвет: <BR>
    <INPUT TYPE = "RADIO" NAME="color" VALUE = "red">Красный<BR>
    <INPUT TYPE = "RADIO" NAME="color" VALUE = "bue">Синий<BR>
    <INPUT TYPE = "RADIO" NAME="color" VALUE = "green">Зеленый<BR>
    <BR>
    <INPUT TYPE = "CHECKBOX" NAME="sports" VALUE="football">Футбол<BR>
    <INPUT TYPE = "CHECKBOX" NAME="sports" VALUE="baseball">Бейсбол<BR>
    <INPUT TYPE = "CHECKBOX" NAME="sports" VALUE="basketbol">Баскетболл<BR>
    <BR>
    <INPUT TYPE = "SUBMIT" NAME="doit" VALUE=" Отправить информацию ">
    </FORM>
    </BODY>
    </HTML>
    </body></html>
    
    
    с помощью этого кода пытаюсь считать данные формы

    Code:
    #!/usr/bin/perl
    use strict;
    use CGI qw(:standard);
    use CGI::Carp qw(fatalsToBrowser);
    
    
    my $first_name = param('fname');
    my $last_name = param('lname');
    
    my $fav_color = param('color');
    
    my @fav_sports = param('sports');
    my $sport_count = @fav_sports;
    my $sport_text;
    print header;
    print start_html ('Моя Первая Форма');
    print qq( Здравствуйте, $first_name $last_name<P>);
    print qq(Ваш любимый цвет: $fav_color);
    if ($sport_count > 1) {
        $sport_text = "Ваши любимые виды спорта";
    }
    else {
        $sport_text = "Ваш любимый вид спорта";
    }
    foreach(@fav_sports) {
        print qq(-$_<BR>);
    }
    print end_html();
    
    
    
    
    то вывод

    Content-Type: text/html; charset=ISO-8859-1 .............................. как убрать эту строку
    и почему все остальное какозябры я сохранял и в utf8 и сp1251 все ровно какозябры
     
  20. drim

    drim Member

    Joined:
    27 Aug 2009
    Messages:
    347
    Likes Received:
    33
    Reputations:
    4
    ответ в вопросе - кодировка 8859-1, а ты текст сохраняешь в utf8 и cp1251. оттого и кракозябры.
    и чёт непонятно что и откуда ты пытаешься считать - с клиентской или серверной стороны?
     
Thread Status:
Not open for further replies.