| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Perl: разработка для Web > CGI upload больших файлов и потеря параметров |
| Автор: Zuzu 25.10.2006, 15:12 | ||||||||||
| Дамы и господа, добрый день. Есть html-код (типа того, что приведен ниже), который выводит форму
Есть index.cgi, задача которого "вызваться" из формы и запустить метод load из модуля file.pm в соответвии с переданными параметрами.
Естественно, есть рабочий file.pm, в нем конструктор (new) и метод Load. Текст его не привожу (итак много кода) А теперь, собственно, вопрос. Если мы грузим большой файл (в нашем случае больше 20Kb - размер специально взят смешным), не принимается ни одного (!!!) параметра. Соответственно $cgi->param('method') и $cgi->param('module') вернут пустые значения. И мы не узнаем, какой модуль вызвать Как в этом случае вызвать нужный модуль, чтобы именно в нем аккуратно написать пользователю ехидное сообщение типа:
Потенциально есть неопробованное решение с использованием RewriteRule's (Apache) (уж очень много переписывать, но попробую на досуге) Форма будет такая: [code=html]
И с помощью технологии Rewrite можно, запутав всех врагов, разобрать URL скрипта и возвести нужные переменные (кусок файла ,htaccess, что-то типа того
Интересует мнение людей, которые эту проблему решали, т.к. одно (потенциально рабочее) решение уже есть. Может кто решал по другому. Интересуют методы, идеи и мнения - код я напишу сам. P.S. Спасибо, что дочитали сообщение до конца, надеюсь не утомил! Кстати. код написан прямо в форуме, поэтому может содержать ошибки, за что заранее извиняюсь. |