Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: реализация скачивания файлов с сервера
 
 автор: Pit0n   (11.08.2007 в 11:10)   письмо автору
 
 

Нужно реализовать систему по которой пользователи скачиват файлы с сервера по ссылке, на примере rapidshare.com. Допустим, пользователь жмет на ссылку index.php?file = 123 и сразу начинается закачка файла, страница при этом не меняется и не происходит редирект на другую страницу, при этом пользователь не видит реальной ссылки для закачки. Не могу сообразить каким образом на страницу подключить нужный файл, чтоб в браузере сразу появлялся файл для скачивания

   
 
 автор: Pit0n   (11.08.2007 в 11:26)   письмо автору
 
   для: Pit0n   (11.08.2007 в 11:10)
 

В общем разобрался, при помощи header('location: http://site.com/file.zip');
1. Не получается вставить вместо http://site.com/file.zip переменную.
2. Каким образом можно скрыть реальный URL ссылки?

   
 
 автор: Shiva   (11.08.2007 в 17:11)   письмо автору
 
   для: Pit0n   (11.08.2007 в 11:26)
 

Если вы передадите браузеру реальный адрес для скачивания, то и пользователь при желании его увидит. Поэтому отдавать нужно не файл с сервера, а его содержимое в виде потока через PHP файл, который будет и проверять право на скачивание.
Но это может сильно нагрузить сервер.

   
 
 автор: parczynski   (12.08.2007 в 02:42)   письмо автору
 
   для: Pit0n   (11.08.2007 в 11:10)
 

примерно так:
header('Content-Length: '.filesize($filename));
header("Content-Description: File Transfer");
header("Content-Disposition: attachment; filename=\"имя под которым будет предложено сохранить файл пользователю\"");
header("Content-type: application/octet-stream");
readfile($filename);

   
 
 автор: Pit0n   (12.08.2007 в 08:41)   письмо автору
 
   для: parczynski   (12.08.2007 в 02:42)
 

Спасибо, попробую

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования