Forum Webscript.Ru
Программирование => Perl => Тема начата: Fluke от 08 Октября 2001, 21:03:28
-
У меня имеется скрипт носящий название download.pl, который позволяет
пользователю скачивать zip архив file.zip с сервера.
Скрипт следующего содержания.
#!/usr/bin/perl -w
use strict;
undef $/;
print "Content-type: application/zip\\n\\n";
open(FILE, "./file.zip");
binmode FILE;
binmode STDOUT;
my $output = ;
print $output;
close(FILE);
exit(0);
В принципе работает все нормально, но по умолчанию zip архив сохраняется на
компьютере пользователя в файл download.pl. Народ, наморщите ум. Как сделать так
чтобы по умолчанию файл сохранялся под именем file.zip?
С уважением.
-
print "Content-Type: application/zip\\nContent-Length: ", -s "./file.zip" ,"\\n";
print "Content-Disposition: attachment; filename=file.zip\\n\\n";
-
Спасибо.
Все заработало.
-
Fluke:
print "Content-Type: application/zip\\nContent-Length: ", -s "./file.zip" ,"\\n";
print "Content-Disposition: attachment; filename=file.zip\\n\\n";
Вот делаю то же самое и получаю окно с именем html откуда вызывается скрипт, жму "Окрыть из текщего места", второе уже с нужным именем.
Где грабли? как сделать чтобы сразу предлагалось сохранить zip?
Как вариант решения: в исходной ссылке использовать target=_blank, а без этого?
Кстати в Opera7 открывает сразу, а IE55 нет.
-
Дык два варианта: либо что-то не так делаешь, либо претензии к Билли, ослик которого неадекватно реагирует на Content-type, а пытается что-то понять по расширению файла.