|
Posted by laredotornado@zipmail.com on 10/26/06 15:01
Wow, you're good. Adding
session_cache_limiter('none');
prior to the session_start() directive worked.
Thanks, - Dave
Andy Hassall wrote:
> On 25 Oct 2006 15:24:54 -0700, "laredotornado@zipmail.com"
> <laredotornado@zipmail.com> wrote:
>
> >This problem only affects PC IE. On a secured page (a page visited via
> >https), there is a link that reads -- "Download HTML File". The link
> >connects to this page
> >
> ><?php
> > require("../../util_fns.php");
> >
> > session_start();
> >
> > $user_id = $_REQUEST[USER_ID_PARAM];
> > $file_contents = generateLoginFile($user_id);
> >
> > header('Content-Type: text/html');
> > header('Content-Length:' . strlen($file_contents));
> > header('Content-Disposition: attachment; filename="' .
> >str_replace("%s", getCompanyName($user_id), AUTO_LOGIN_FILE_TITLE) .
> >'.html"');
> >
> > print $file_contents;
> >?>
> >
> >However, on Internet Explorer, when I'm prompted to save the file, I
> >click "Save" and then get an error message stating, "Internet Explorer
> >cannot download ...ate_login_file.php?UserId=2 from
> >mysite.mydomain.com.
> >
> >Internet Explorer was not able to open the Internet site. The
> >requested site is either unavailable or cannot be found. Please try
> >again later."
> >
> >Is there something wrong iwth one of the headers I'm sending? I'm
> >using PHP 4.4.4.
>
> session_start() by default sends a cache control header including "no-store".
> Internet Explorer takes this a bit too literally, but doesn't have appropriate
> error handling for the case, and as a result explodes cryptically when you
> attempt to save the output page to disk.
>
> Before session_start(), add "session_cache_limiter('none');", or look up that
> function and tweak the limiter as appropriate (probably 'private' is closer to
> the mark).
>
> --
> Andy Hassall :: andy@andyh.co.uk :: http://www.andyh.co.uk
> http://www.andyhsoftware.co.uk/space :: disk and FTP usage analysis tool
Navigation:
[Reply to this message]
|