Автор Тема: Окно загрузки пр нажатии на ссылку  (Прочитано 2934 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн WG

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 39
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Проблема следующая: нужно чтобы при нажатии на ссылку файл (text.doc), он не открывался в браузере а предлагалось его download. Если я пишу:

download.pl

#!/usr/bin/perl
##############
$filename = \'text.doc\';
$bytes = -s "$filename";
open(FILE,"$filemame");
binmode FILE;
read(FILE,$file,$bytes);
close(FILE);
print "Content-type: application/force-download\\n";
print "Content-Disposition: attachment; filename=$filename\\n";
print "Content-length: $bytes\\n\\n";
binmode STDOUT;
print $file;

то при этом файл сохраняется с нулевой длиной (пустой)
и при появлении окна загрузки выдается не имя документа а имя скрипта, что не так?

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
Окно загрузки пр нажатии на ссылку
« Ответ #1 : 03 Апреля 2004, 01:09:35 »
open(FILE,"$filemame");
-----------------------^

perldoc strict
perldoc warnings
0 OK, 0:1

Оффлайн Karabas

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 10
  • +0/-0
  • 0
    • Просмотр профиля
    • http://karabas.da.ru
Окно загрузки пр нажатии на ссылку
« Ответ #2 : 12 Апреля 2004, 17:26:41 »
У меня работает это :

sysopen(FILE, "$file", O_RDONLY);
print "Content-Disposition: multipart\\/form-data\\; filename=\\"$name\\" \\n\\n";
binmode FILE;
binmode(STDOUT);
while(read(FILE, my $data, 1024)){print $data}
close FILE;

Не кликай тут своей мышою !

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28