Re: Re: force to download file

From: Date: Tue, 18 Dec 2007 09:57:11 +0000
Subject: Re: Re: force to download file
References: 1 2  Groups: php.db php.general 
Request: Send a blank email to php-general+get-266010@lists.php.net to get a copy of this message
i have this on top of my php page: header("Content-Type: application/vnd.ms-excel"); header("Content-Disposition: inline; filename=excelfile.xls"); but it is not prompt to save the file instead it opens right in IE. my question is how do i force the browser prompts to save the file?
<?php
    header('Content-Disposition: attachment; filename="'.$filename.'"');
?> That should do the trick, but if not then try adding the Content-Type header from below.
<? function force_download($filename,$dir='./') {
    if ((isset($file))&&(file_exists($dir.$file))) {
        header("Content-type: application/force-download");
        header('Content-Disposition: inline; filename="'.$dir.$filename.'"');
        header("Content-Transfer-Encoding: Binary");
        header("Content-length: ".filesize($dir.$filename));
        header('Content-Type: application/octet-stream');
        header('Content-Disposition: attachment; filename="'.$filename.'"');
        readfile($dir.$filename);
    } else {
        echo "No file selected";
    }
} ?>
FYI You have Content-Disposition twice; you only need the second. -- Richard Heyes http://www.websupportsolutions.co.uk Knowledge Base and HelpDesk software that can cut the cost of online support ** NOW OFFERING FREE ACCOUNTS TO CHARITIES AND NON-PROFITS **

« previous php.general (#266010) next »