Длина данных, передаваемых таким методом,
2. Длина данных, передаваемых таким методом, ограничена.
3. Hельзя передавать multipart form data, в т.ч. файлы через кнопочку
"Browse"
POST - передача данных скрипту через STDIN. Отсутствуют минусы метода GET.
Обычно метод GET используется, когда скрипт вызывается со страницы через линк
, а POST - при нажатии кнопки submit в форме.
О получении параметров внутри скрипта читайте в следующем Q.
Q: Как обрабатывать параметры, переданные скрипту?
A1: Используйте модуль CGI. Прочтите perldoc CGI , а для начала простой
пример:
use CGI;
$q=new CGI();
$mode=$q->param('mode');
$q - объект, который имеет несколько методов и полей, относящихся к
параметрам вызова, переменным окружения, cookie, и пр. В $mode содержится значение параметра 'mode'.
или проще: use CGI qw/:standard/;
$mode=param('mode'); если вам не нужно несколько объектов.
A2: Некоторые предпочитают пользоваться библиотекой cgi-lib (она тоже входит в модуль CGI, хотя существуют индивидуумы, которые включают ее отдельным файлом).
Пример:
use CGI qw(:cgi-lib);
ReadParse(); #Функция возвращает все параметры в хэш.
$mode=$in{'mode'};
A3: Можно пойти по пути изобретения велосипеда и начать переписывать модуль CGI, т.е. разбор параметров метода GET, потом наверняка понадобиться POST, а потом multipart form data. В написанный код закрадуться ошибки, которые придется отлавливать на последующих этапах. Это конечно дает неплохую практику программирования, но лучше просто посмотрите как написан модуль CGI.
(Высказанное в последнем ответе является тем самым ИМХО ).
Q: Посоветуйте халявный хостинг с поддержкой CGI-perl.
A:
Примечание:
В последнее время почти все халявные хостинги перестали поддерживать исходящие запросы, т.е. скачать откуда-нибудь файл используя LWP или Net::Ftp не получиться.
Если знаете хостинг с поддержкой исходящих запросов, напишите мне, буду благодарен.
Q: Что надо указатьв заголовках HTTP-ответа CGI скрипта, выводящего
содержимое, которое надо не показать на экране, а сохранить в файле с заданным
именем, например 'download.zip' ? А то браузер сохраняет файл с именем скрипта.
A: print "Content-Type: application/octet-stream\nContent-Length: ", -s 'download.zip' ,"\n";
print "Content-Disposition: attachment; filename=download.zip\n\n";
Q: Директивы SSI не обрабатываются в выводе скрипта. Что делать?
A: Есть специальный модуль - CGI::SSI.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий