|
|
|
| Уважаемые программисты!
У меня есть такая задача - при клике на кнопке запускается скрипт и результат его работы предлагается юзеру сохранить на диск в html-файле. У меня скрипт генерирует все что нужно но результат посылает в браузер а не предлагает юзеру сохранить в файл на диске...Может кто-нибудь сталкивался с подобной задачей, подскажите пожалуйста как можно сделать. Благодарю заранее! | |
|
|
|
|
|
|
|
для: Spartak
(11.09.2010 в 12:03)
| | тип содержимого должен быть указан как application/octet-stream | |
|
|
|
|
|
|
|
для: Trianon
(11.09.2010 в 15:45)
| | Спасибо. Это надо в функции header() писать? А можно ли с помощью яваскрипта такое сделать если при нажатии на кнопку на клиенте генерируется содержимое и предлагается сохранить в html-файле? | |
|
|
|
|
|
|
|
для: Spartak
(11.09.2010 в 17:34)
| | клиентские скрипты не имеют права записывать файлы локально. | |
|
|
|
|
|
|
|
для: Trianon
(11.09.2010 в 18:10)
| | Сделал как Вы сказали, но результат работы скрипта сохраняется в файле с расширением .рнр...А можно ли чтобы сохраняло с расширением .html? | |
|
|
|
|
|
|
|
для: Spartak
(13.09.2010 в 13:04)
| | Можно, если укажите имя под которым надо сохранить. | |
|
|
|
|
|
|
|
для: sim5
(13.09.2010 в 13:05)
| | <?php
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="form.html"');
echo 'this content will be saved in local file form.html';
?>
Так работает. Спасибо!
Интересно есть ли другие варианты...? | |
|
|
|
|
|
|
|
для: Spartak
(13.09.2010 в 13:31)
| | Варианты чего? | |
|
|
|
|
|
|
|
для: sim5
(13.09.2010 в 13:38)
| | как реализовать сохранение ответа сервера в файле | |
|
|
|
|
|
|
|
для: Spartak
(13.09.2010 в 13:45)
| | Есть - попросить пользователей настроить свои браузеры так, чтобы все не открывалось, а сохранялось в файл.
PS. Хотя, если говорить серьезно, то вы можете Апач настроить так, что определенным типам файлов он будет указывать соответствующий заголовок, что определит поведение браузера. Но... Откройте настройки Опера, например, и посмотрите раздел загрузок - вы не найдете там octet-stream, пока не уберете галочку "Скрывать типы, открываемые в Опера", и по умолчанию, эта дурная Опера (не помню с какой версии) грузит .exe файлы в свое окно...
С русскими именами файлов разные браузеры поступают тоже по разному (в зависимости от кодировки - win 1251 или utf). | |
|
|
|