아빠불당님 이걸로 테스트 해보세요. 정보
아빠불당님 이걸로 테스트 해보세요.본문
개인적으로 느리지만 보드를 하나 만들고 있는데 거기에 쓸 다운로더를 미리 공개하게 되네요.
이걸로 테스트해주시겠어요? 덕분에 저도 테스트할 겸.ㅎㅎ
방법은 첨부된 downloader.php를 lib폴더에 넣습니다.
bbs/download.php를 열고
if (file_exists($filepath)) {
if(eregi("msie", $_SERVER[HTTP_USER_AGENT]) && eregi("5\.5", $_SERVER[HTTP_USER_AGENT])) {
header("content-type: doesn/matter");
header("content-length: ".filesize("$filepath"));
header("content-disposition: attachment; filename=\"$original\"");
header("content-transfer-encoding: binary");
} else {
header("content-type: file/unknown");
header("content-length: ".filesize("$filepath"));
header("content-disposition: attachment; filename=\"$original\"");
header("content-description: php generated data");
}
header("pragma: no-cache");
header("expires: 0");
flush();
if (is_file("$filepath")) {
$fp = fopen("$filepath", "rb");
// 4.00 대체
// 서버부하를 줄이려면 print 나 echo 또는 while 문을 이용한 방법보다는 이방법이...
//if (!fpassthru($fp)) {
// fclose($fp);
//}
while(!feof($fp)) {
echo fread($fp, 100*1024);
flush();
}
fclose ($fp);
flush();
} else {
alert("해당 파일이나 경로가 존재하지 않습니다.");
}
} else {
alert("파일을 찾을 수 없습니다.");
}
를 찾은 후 다음으로 교체합니다.
include $g4['path'].'/lib/downloader.php';
$fd = new Downloader();
$fd->set($filepath, $original, 100, false);
$fd->download();
0
첨부파일
댓글 9개
이게 그누의 download.php와 비교해서 좋은점이 뭔가요??? 궁금궁금...
처음 다운로드에서는...ㅠ..ㅠ...
저는 차이를 잘 못느끼겟어요. 확인해봐 주세요.
content-transfer-encoding을 chunked로 놓고 다운하는 방법을 연구하다 그냥 내려놓았습니다.
마지막으로 이런 테스트를 해봄도 좋을 듯하네요.
while(!feof($fp)) {
echo fread($fp, 100*1024);
flush();
}
를
echo fread($fp, filesize($filepath));
flush();