Модераторы: korob2001, ginnie

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Perl с самого начала, Perl для начинающих 
V
    Опции темы
vladeimirami
Дата 6.10.2010, 20:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 6.10.2010

Репутация: нет
Всего: нет



Уважаемые господа профессионалы Web-програмисты помогите неучу! Дело в том, что написал учебную программку: 


#!/usr/bin/perl -w 
# Выводим все сообщения об ошибках 
# в окно браузера 
use CGI::Carp qw(fatalsToBrowser); 
print "Content-type: text/html\n\n"; 

print "<html>"; 
print "<head>"; 
print "<title>Первая программа</title>"; 
print "</head>"; 
print "<body>"; 
print "Привет всем!"; 
print "</body>"; 
print "</html>"; 

далее самое главное 
1. не знаю как назвать ее (index.pl, test.pl и т.д..?????) ? 
2. куда "залить" ее чтобы работала как index.html ?
PM MAIL   Вверх
Jimy
Дата 6.10.2010, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 4.7.2010

Репутация: нет
Всего: 3



Цитата(vladeimirami @  6.10.2010,  20:39 Найти цитируемый пост)
1. не знаю как назвать ее (index.pl, test.pl и т.д..?????) ?  

Не имеет значения.

Цитата(vladeimirami @  6.10.2010,  20:39 Найти цитируемый пост)
2. куда "залить" ее чтобы работала как index.html ? 

Что Вы подразумеваете под "работать как index.html"?
PM   Вверх
vladeimirami
Дата 6.10.2010, 22:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 6.10.2010

Репутация: нет
Всего: нет



Что я подразумеваю под цитатой "работать как index.html"?

К примеру у меня есть сайтик по адресу http://ermlenkvladimir.narod.ru/
если я данный адрес набираю в браузере, то я сразу перехожу по этому адресу к файлу index.html.
Так вот я бы хотел знать куда можно расположить файл ??????.pl, что бы при наборе адреса
я сразу переходил бы к файлу ??????.pl (без указания полного адреса http://ermlenkvladimir.narod.ru/cgi-bin/??????.pl (в данном примере адреса я не имею ввиду сайт на народе))?
PM MAIL   Вверх
Jimy
Дата 6.10.2010, 23:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 4.7.2010

Репутация: нет
Всего: 3



Предположим, что у Вас веб-сервер - apache.
Я бы воспользовался для этих целей модулем mod_rewrite, который позволяет создавать правила обработки запроса. Т.о. можно любой запрос перенаправить куда угодно и соответственно не имеет значения где лежит скрипт.

А вообще реализация зависит от конкретной цели.
Самый простой вариант: создать в каталоге файл .htaccess и в нем задать параметр DirectoryIndex с указанием пути к скрипту (скрипт опять же при этом может находится в cgi-bin).
PM   Вверх
vladeimirami
Дата 6.10.2010, 23:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 6.10.2010

Репутация: нет
Всего: нет



Jimy, мне еще не все понятно, но я понял в каком направлении нужно еще порыть! Огромное спасибо за подсказку. Помощь отличная! СПАСИБО!

Добавлено через 7 минут и 12 секунд
Jimy!!!! Суппер!!!!! Все получилось! УРА!!!!! Еще раз СПАСИБО!

Добавлено через 8 минут и 42 секунды
Что дальше делать с этой темой? Закрыть?
PM MAIL   Вверх
vladeimirami
Дата 6.10.2010, 23:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 6.10.2010

Репутация: нет
Всего: нет



Прописал в файле .htaccess - DirectoryIndex cgi-bin/index.pl и все пошло! Спасибо!
PM MAIL   Вверх
Jimy
Дата 7.10.2010, 08:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 177
Регистрация: 4.7.2010

Репутация: нет
Всего: 3



Да, тему стоит закрыть.
Рад был помочь.  smile 
PM   Вверх
Pollucs
Дата 10.2.2011, 22:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 10.2.2011

Репутация: нет
Всего: нет



Изучаю Perl совсем недавно, вот наткнулся на ошибку, не могу понять где и что. Код следующий:

Код

#!/usr/bin/perl -w
use CGI qw/:standard/;
use CGI::Carp 'fatalsToBrowser';
print "Content-type: text/html\n\n";
$cfg{config_file}= "C:/WebServers/home/perlbook.ru/cgi-bin/shop/myshop.cfg";
&ChtenConfig;


 sub ChtenConfig{
    local (@var_value_pairs, $var_value_pair, $var, $value, $temp);
    open(CFG, "$cfg{config_file}");
    while(<CFG>){
       chop;
       $temp = $_;
       $temp =~ s/^[ |\t]*//;
       $temp =~ s/[ |\t]*$//;

       if (!((m/^[ |\t]*.*/) || (m/^[ |\t]*$))) {
          push(@var_value_pairs, $_);
       }
    }
    close(CFG);
    foreach $var_value_pair(@var_value_pairs){
         ($var, $value) = split(/=/, $var_value_pair);
           $var =~ tr/[A-Z]/[a-z]/;
           $cfg{$var} = $value;
    }
}



Ошибку пишет такую:
<pre>Can't modify pattern match (m//) in scalar assignment at test.cgi line 25, near &quot;$var =~ tr/[&quot;
  (Might be a runaway multi-line // string starting on line 24)
syntax error at test.cgi line 25, near &quot;$var =~ tr/[&quot;

Подскажите пожалуйста, где и в чём я не прав? Заранее прошу, не бейте сильно, я лишь начинаю.. smile 
И ещё подскажите пожалуйста, где можно найти описания всех ошибок, так будет проще разбирать код.. Заранее спасибо.
PM MAIL   Вверх
sir_nuf_nuf
Дата 11.2.2011, 11:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 6.1.2008

Репутация: 2
Всего: 31



У вас в строке 18 не закрыт второй m// .  Скорее всего в этом трабл.
Пишите такие вопросы в отдельный тред


--------------------
user posted image
user posted image
PM MAIL Jabber   Вверх
Pollucs
Дата 11.2.2011, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 10.2.2011

Репутация: нет
Всего: нет



спасибо! проблема и правда была в этом! не совсем понял куда стоит по таким вопросам обращаться..
PM MAIL   Вверх
Pollucs
Дата 21.2.2011, 13:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 10.2.2011

Репутация: нет
Всего: нет



Доброго времени суток! Такой вопрос: можно ли пошагово проследить за выполнением cgi-скрипта? Как это можно сделать? Может программу какую посоветуете? Довольно трудно понять, в каком месте его выполнение прерывается. Буду очень признателен за помощь.
PM MAIL   Вверх
sir_nuf_nuf
Дата 21.2.2011, 13:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 6.1.2008

Репутация: 2
Всего: 31



Можно. С помощью отладчика perl
Код

perl -d my-script.cgi a=3&b=7

Но проверять можно только запуская скрипт из консоли, когда скрипт запускается веб-сервером - нельзя


--------------------
user posted image
user posted image
PM MAIL Jabber   Вверх
Pollucs
Дата 21.2.2011, 13:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 10.2.2011

Репутация: нет
Всего: нет



Спасибо, получил ответ, но что получил - не знаю, справка может есть по таким ответам где-нибудь?..

Добавлено через 3 минуты и 22 секунды
А в редакторах Perl (DzSoft.Perl.Editor например) такую проверку никак нельзя осуществить?
PM MAIL   Вверх
sir_nuf_nuf
Дата 21.2.2011, 13:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 920
Регистрация: 6.1.2008

Репутация: 2
Всего: 31



Нет, справки нету.
Разберитесь что такое CGI скрипты.
Это просто программы, которые печатают html.
При запуске из веб-сервера - html попадает в браузер.
При запуске из консоли - html попадает в консоль.


Разберитесь как запускать отдельные perl скрипты.

Разберитесь с отладчиком: 
http://perldoc.perl.org/perldebug.html


--------------------
user posted image
user posted image
PM MAIL Jabber   Вверх
Pollucs
Дата 21.2.2011, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 17
Регистрация: 10.2.2011

Репутация: нет
Всего: нет



Спасибо! Буду разбираться, правда инструкцию буду искать на русском.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Perl: CGI программирование"
korob2001
sharq
  • В этом разделе обсуждаются вопросы относящиеся только к CGI программированию
  • Если ваш вопрос не относится к системному или CGI программированию, задавайте его в общем разделе
  • Если ваш вопрос относится к системному программированию, задавайте его здесь
  • Интерпретатор Perl можно скачать здесь ActiveState, O'REILLY, The source for Perl
  • Справочное руководство "Установка perl-модулей", качать здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: разработка для Web | Следующая тема »


 




[ Время генерации скрипта: 0.1238 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.