докачка файла в php
1869
5
Сейчас стоит такой скрипт:
splashman
ёптыть... а к чему так сложно то? Не проще ли делать переадресацию в скрипте на файл который скачивается? и потом пусть сам веб-сервак разбирается с докачкой...

ну а по сути вопроса алгоритм такой:
1. читаем HTTP заголовок
2. ищем в нем запрос "Range: bytes=XXX-YYY" это и есть запрос на докачку файла с XXX байта по YYY
3. формируем заголовок и выводим из файла этот диапозон байт
=SmasH=
да все. написал сам.


тока сказали под каким-то DAPом не работает, а под регетом все нормально
splashman
FYI: на дворе 21-й век, в пхп давно по-умолчанию выключено register_long_arrays. а вы всё туда же - $HTTP_SERVER_VARS :зло:
splashman
if ($range) {fseek($fd, $range);}
}
$content = fread($fd, filesize($filename));
Странно... Если ты уже сделал смещение по файлу, то может нужно все-таки $content = fread($fd, filesize($filename)-$range); ? Я конечно понимаю, что функция fread обработает правильно если ты попытаешься считать больше байт, и упрешься в EOF, но все же...
netghost
да ладно Вам мучить мой скрипт, знаю что косяки в нем есть, т.к. написать его надо было минут за 40. если по хорошему делать , то надо времени чуть по-больше.