Главная страница


ru.cgi.perl

 
 - RU.CGI.PERL ------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/371.32  03 Aug 2001  13:37:07
 To : Andrey Falko
 Subject : Re: DOWNLOAD
 -------------------------------------------------------------------------------- 
 
 AF> Много раз видел, как на страницах для скачивания файла вместо конкретной
 AF> ссылки на файл укзывалась ссылка к примеру файла на perl с параметрами. А
 AF> при нажатии на нее начинало тащить нужный файл. Чисто эксперементальным
 AF> путем допер, что что это можно сдетать так:
 AF> print "Content-type: file/binary
 
 Во-первых, не file/binary, а application/octet-stream. RFC2046.
 
 AF> Content-Length: 53866\n\n";              # 53866 это к примеру размер
 AF> тянущегося файла.
 AF> А после этого пихать print-ом уже конкретный фалй, ну к примеру так:
 AF> @data=LoadFromBinFile("$FORM{'filename'}"); #  LoadFromBinFile - моя
 AF> процедурка.
 AF> for ($i=0;$i<@data;$i++) {
 AF>   print "$data[$i]";
 AF> }
 AF> exit;
 AF> Все это красиво, но что еще надо добавить в заголовок, чтобы эксплорер
 AF> предлагал нужное мне имя для файла, а не имя pl-файла?
 
 Самый красивый способ - вызывать URL не как
 http://path/to/script.pl?filename=tratata, а как
 http://path/to/script.pl/tratata. В скрипте использовать соответственно не
 param('filename'), а $ENV{'PATH_INFO'}, предварительно откусив ведущий /, ну и
 проверив на прочую безопасность.
 
 -- 
 Artem Chuprina <ran@ran.pp.ru>
 FIDO: 2:5020/371.32
 --- slrn/0.9.7.0 (Linux)
  * Origin: AKA с подствольным плюсомётом (2:5020/371.32)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: DOWNLOAD   Artem Chuprina   03 Aug 2001 13:37:07 
Архивное /ru.cgi.perl/733026a778fab.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional