Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   качаем файл, только по разрешению... (http://forum.oszone.net/showthread.php?t=68766)

Drem 20-07-2006 22:08 463234

качаем файл, только по разрешению...
 
Как разрешить качать файл, только если создана сессионная переменная на пхп??? Вить можно просто напрямую набрать адресс файла. Т.е. как напрямую запретить качать файл??? А разрешать только пройдя скрипт определяющий не создана ли сессионная переменная.

Vlad Drakula 20-07-2006 22:14 463236

oleksiy
первое что приходит на ум: отдавать файл средствами PHP.

Drem 20-07-2006 22:42 463244

Vlad Drakula, можно поподробнее, мне это тоже в голову пришло, и даже ели будет скрипт, если напрямую набрать адресс файла на сервере???

vadimiron 21-07-2006 01:20 463281

oleksiy
смысл в том, что не даём прямую ссылку на файл
с помощью функции header ставим правильный заголовок, функцией fread читаем файл, и конструкцией echo выводим результат в браузер
браузер видит заголовок, и перенаправляет файл на скачку

Drem 21-07-2006 01:33 463283

vadimiron, не до конца уловил, можно небольшой код, что-бы я до конца понял... И размер файл может достигать 200-400 метров.

JASterus 21-07-2006 09:59 463389

<?
ob_start();
$f = fopen('somefile.zip','r');
$buf = fread($f,filesize('somefile.zip'));
header("Content-type: application/zip;");//это если к примеру зип отдаешь
header("Content-Disposition: attachment; filename=somefile_download.zip");
fclose($f);
print $buf;
ob_end_flush();
?>


Время: 06:47.

Время: 06:47.
© OSzone.net 2001-