开发者

Unable to browse the site while downloading a file using php

I used this code for downloading files

$file='test.mp3';
$download_rate = 50; //50 kb/s

if(file_exists($file) && is_file($file))
{
    header('Cache-control: private');
    header('Content-Type: application/octet-stream');
    header('Content-Length: '.filesize($file));
    header('Content-Disposition: filename='.$file);

    flush();
    $开发者_运维百科file = fopen($file, "r");

    while(!feof($file))
    {
        // send the current file part to the browser
        print fread($file, round($download_rate * 1024));
        // flush the content to the browser
        flush();
        // sleep one second
        sleep(1);
    }
    fclose($file);
    }
else {
    echo 'File Not Found';
}

but while downloading the file cannot browse the site till the download completed. this happened with IE and Firefox

Any answers?


Only time I know this happens is when you have sessions which have not been written. I can't see any sessions here so I'm not sure what is causing it. However, most php download file scripts are used to check for logins so I'm guessing this is the case. if you do have sessions, try session_write_close();

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜