Автор Тема: Download через перл ??????  (Прочитано 6985 раз)

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

Оффлайн Lurker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://mooneey.narod.ru
Download через перл ??????
« : 08 Марта 2003, 13:17:09 »
Помогите пожалуйста ....
Нужно сделать скрипт который по паролю с логином бедет позволять скачивать определенный файл как это сделать

Как организовать download файла через скрипт перла ????

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Download через перл ??????
« Ответ #1 : 08 Марта 2003, 20:51:51 »
Цитировать
Нужно сделать скрипт который по паролю с логином бедет позволять скачивать определенный файл как это сделать
Как организовать download файла через скрипт перла ????

FAQ читаем?
http://wiki.webscript.ru/PerlFAQ
2B OR NOT 2B = FF

Оффлайн Lurker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://mooneey.narod.ru
Download через перл ??????
« Ответ #2 : 10 Марта 2003, 08:34:54 »
А как передать содержимое файла ???
Я поставил заголовок но мне возвращаеться пустой файл.....

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Download через перл ??????
« Ответ #3 : 10 Марта 2003, 10:38:42 »
Цитировать
Chs:
http://wiki.webscript.ru/PerlFAQ

загнул, ты Chs.
Начинать здесь надо с http://yandex.ru/yandsearch?text=%FF%E7%FB%EA+html
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Lurker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://mooneey.narod.ru
Download через перл ??????
« Ответ #4 : 10 Марта 2003, 11:43:28 »
Большое спасибо Mog.  ты мне так помог !!! 8-/

 Chs я заголовки вставил, но как правильно выдать содержимое этого архива, дай примерчик чтоли......

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Download через перл ??????
« Ответ #5 : 10 Марта 2003, 13:26:58 »
Цитировать
Lurker:
Большое спасибо Mog. ты мне так помог !!! 8-/
Ну вот, хоть один поблагодарил :)

Цитировать
Lurker:
дай примерчик чтоли......

В http://wiki.webscript.ru/PFWWWUpload  же, пример лежит, самый, что ни на есть пример. Что непонятного?
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Lurker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://mooneey.narod.ru
Download через перл ??????
« Ответ #6 : 10 Марта 2003, 13:43:44 »
Да мне не Upload нужен ............
А наоборот... запускаеш скрипт а он тебе предлагает сохранить такойто файл (т.б. закачька файла с инета к себе на винт)

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Download через перл ??????
« Ответ #7 : 10 Марта 2003, 16:21:27 »
Цитировать
Lurker:
Да мне не Upload нужен ............
А наоборот...
Даунлоад, значит, нужен. Понял :)

Примерно так

#!/usr/bin/perl
use CGI qwparam );
use 
CGI::Carp qwfatalsToBrowser );

$name=param(\'name\');
$s_dir="./songs";# каталог где лежат файлы и откуда они будцт скачиваться
if(!$name){&list_files}
&save_file;
sub save_file{ # та часть, которая занимается аплоадом
open(file, "$s_dir/$name");
binmode file;
@xxx=<file>;
$size= -s file;
close file;
print "Content-type: application/octetstream\\n";
print "Content-length: $size\\n";
print "Content-disposition: inline; filename=\\"$name\\"\\n\\n";
for (@xxx){print "$_";}
}

sub list_files{ # формирует список файлов из заданного каталога
opendir (DIR, "$s_dir");
@dir=readdir DIR;
closedir DIR;
print "Content-type: text/html\\n\\n";
for $s(@dir){
	
if($s!~/(^\\.$)|(^\\.\\.$)/){
	
	
@s_f=stat("$s_dir/$s");
	
	
$size=sprintf "%.2f",$s_f[7]/1000;
	
	
print "Скачать <a href=\\"$ENV{\'SCRIPT\'}?name=$s\\">$s</a> ($size Kбайт)
\\n";
	
	
}
	
}
exit;
}


поробуй.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Lurker

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 11
  • +0/-0
  • 0
    • Просмотр профиля
    • http://mooneey.narod.ru
Download через перл ??????
« Ответ #8 : 10 Марта 2003, 17:14:24 »
Вот СПАСИБО !!!!!
помог.......я с этим скриптом уже недлю мудухаюсь....
Спасибо помог!

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Download через перл ??????
« Ответ #9 : 10 Марта 2003, 17:40:39 »
Mog.
binmode STDOUT
еще рекомендуется.:)
2B OR NOT 2B = FF

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Download через перл ??????
« Ответ #10 : 10 Марта 2003, 17:43:43 »
Цитировать
Chs:
binmode STDOUT
еще рекомендуется
Буду иметь ввиду, спасибо.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Jurik

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 22
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Download через перл ??????
« Ответ #11 : 12 Марта 2003, 18:58:01 »
А как сделать, чтобы предлагалось скачать файл, а не сразу открывалось?

Оффлайн mike

  • ProPerl\'er
  • Старожил
  • ****
  • Сообщений: 435
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Download через перл ??????
« Ответ #12 : 12 Марта 2003, 19:36:46 »
Цитировать
Jurik:
А как сделать, чтобы предлагалось скачать файл, а не сразу открывалось?

print "Content-type: application/octet-stream\\n";
вместо
print "Content-type: application/octetstream\\n";
[ основной браузер когда-то был, теперь попробуй разберись =]

Оффлайн Jurik

  • Заглянувший
  • Новичок
  • *
  • Сообщений: 22
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Download через перл ??????
« Ответ #13 : 12 Марта 2003, 19:41:41 »
Не работает.
Например, gif-файл сразу открывается в окне Internet Explorer.

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Download через перл ??????
« Ответ #14 : 12 Марта 2003, 21:43:58 »
Цитировать
Например, gif-файл сразу открывается в окне Internet Explorer

Гребанный IE определяет то, что делать с файлом не по Content-type, а по своей внутренней логике.
А вообще вот так:

print "Content-Type: application/octet-stream\\nContent-Length: ", -s \'download.zip\' ,"\\n";
print "Content-Disposition: attachment; filename=download.zip\\n\\n";
2B OR NOT 2B = FF

 

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