The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Как CGI-скрипту указать имя возвращаемого архива"
Вариант для распечатки  
Пред. тема | След. тема 
Форум WEB технологии (web-разработка, CGI)
Изначальное сообщение [ Отслеживать ]

"Как CGI-скрипту указать имя возвращаемого архива"  +/
Сообщение от Саша (??) on 09-Апр-14, 21:28 
Здравствуйте,

Кратко вопрос звучит так:
может ли CGI-скрипт вернуть вместе с данными, имя этих данных?

Более подробно лучше на примере:

1) Есть HTML-страница, на которой отображён список файлов.
2) Возле каждого файла есть чекбокс, позволяющий отметить файл
3) Есть кнопки
3.1) Удалить - удаляет выбранные файлы
3.2) Скачать - пакует в архив выделенные файлы и возвращает архив

Я это реализую следующим образом:
1) Список файлов с чекбоксами и кнопками я располагаю в одну форму и в action этой формы указываю имя скрипта, допустим FileMgr
2) Скрипт FileMgr в зависимости от выбранных чекбоксов и типа кнопки:
2.1) удаляет выбранные файлы и возвращает ту же HTML-страницу, только уже без удалённых файлов
2.1) пакует выбранные файлы zip-ом и возвращает полученный архив в виде потока данных, указав Content-type: aplication/zip

Проблемма в (2.1):
При возврате архива браузеры восновном предлагают сохранить файл, и в качестве имени файла предлагают:
1) в лучшем случае имя_скрипта.zip
2) просто имя_скрипта
3) имя_скрипта_ещё_что-то
Т.е. имя не очень хорошее и пользователь вынужден его править.
Выходом является назвать скрипт сразу с расширением zip, но ведь этот скрипт выполняет не только возвращение архива, но и другую работу и с расширением zip будет иметь нелогичное имя.
Как можно решить данную проблемму?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Как CGI-скрипту указать имя возвращаемого архива"  +/
Сообщение от parad (ok) on 09-Апр-14, 22:30 
Заголовком:
Content-Disposition:attachment;filename=name.txt;
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Как CGI-скрипту указать имя возвращаемого архива"  +/
Сообщение от Саша (??) on 11-Апр-14, 15:50 
> Заголовком:
> Content-Disposition:attachment;filename=name.txt;

Спасибо за наводку!!! И оперативные ответ!
Правда с первого раза не получилось. После чего нашёл статью http://gordievskiy.blogspot.com/2009/12/content-disposition-...

PS: Эх жаль что несколько лет назад я так и не нашёл ответ и приходилось извращаться через называние скрипта нужным именем с расширением zip, но тогда скрипт только и занимался, что возвращением архива, а теперь задача усложнилась и снова встал вопрос.
Причём Content-Disposition я уже использовал, когда читал входные данные, а вот что он может использоваться и в ВЫХОДНЫХ - не знал.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Как CGI-скрипту указать имя возвращаемого архива"  +/
Сообщение от Pahanivo (ok) on 11-Апр-14, 16:34 
> PS: Эх жаль что несколько лет назад я так и не нашёл
> ответ и приходилось извращаться через называние скрипта нужным именем с расширением
> zip, но тогда скрипт только и занимался, что возвращением архива, а
> теперь задача усложнилась и снова встал вопрос.
> Причём Content-Disposition я уже использовал, когда читал входные данные, а вот что
> он может использоваться и в ВЫХОДНЫХ - не знал.

тяжко жить пока гугл не освоишь )))

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру