RE: [PHP] MSIE problem with binary file download over SSL

From: Date: Tue, 08 Apr 2003 03:59:18 +0000
Subject: RE: [PHP] MSIE problem with binary file download over SSL
References: 1  Groups: php.general 
Request: Send a blank email to php-general+get-142790@lists.php.net to get a copy of this message
Have you tried setting it in php.ini? ---John W. Holmes... PHP Architect - A monthly magazine for PHP Professionals. Get your copy today. http://www.phparch.com/ > -----Original Message----- > From: Rich Choy [mailto:versace_74@hotmail.com] > Sent: Monday, April 07, 2003 11:15 PM > To: php-general@lists.php.net > Subject: Re: [PHP] MSIE problem with binary file download over SSL > > John, > > Yep, I'm using sessions. I've tried the following for > session_cache_limiter(): > > empty > "none" > "private" > "private-no-expire" > "public" > > None of them work. I am declaring session_cache_limiter() before > session_start() in my script. > > Any ideas? > > -Rich > > > "John W. Holmes" <holmes072000@charter.net> wrote in message > news:002501c2fd72$0db8f740$7c02a8c0@coconut... > > Are you using sessions? There is a "feature" in IE that'll mess up > > downloads over SSL when the session sends it's session.cache_limiter > > value. If it's set to "nocache" then the download does not work. Setting > > it to "none" or empty will allow you to do the file download. > > > > ---John W. Holmes... > > > > PHP Architect - A monthly magazine for PHP Professionals. Get your copy > > today. http://www.phparch.com/ > > > > > -----Original Message----- > > > From: Rich Choy [mailto:versace_74@hotmail.com] > > > Sent: Monday, April 07, 2003 8:47 PM > > > To: php-general@lists.php.net > > > Subject: [PHP] MSIE problem with binary file download over SSL > > > > > > Hi, > > > > > > I have a script that retrieves binary blob data from a database and > > sends > > > it > > > to the client browser via SSL. It works like a charm for all browsers > > > except > > > for MSIE. I can assure you that the problem has nothing to do with the > > way > > > I've set up my headers; after a bit of investigation I've figured out > > that > > > MSIE has a problem with my script when it sends data over SSL. I have > > > tested > > > the script with MSIE over a regular port 80 connection and the > > download > > > script works just fine. > > > > > > I am running Apache 1.3.6 + OpenSSL 0.9.6g + PHP 4.1.2. Does anyone > > know a > > > workaround to this problem? I have looked all over the web to no > > avail. > > > Any > > > help is appreciated. > > > > > > Thanks in advance, > > > > > > Rich > > > > > > Here's the download script: > > > > > > [begin php] > > > > > > <? > > > include("_srs/res_common_sdx_admin.inc"); > > > include("_srs/res_auth_admin.inc"); > > > > > > $id = $_GET['id']; > > > > > > if ($id) { > > > // if record id was specified > > > > > > @include("res_db.inc"); > > > // connect to database > > > > > > $db_q['lit'] = "select * from sdx_literature where id = $id"; > > > $db_r['lit'] = mysql_query($db_q['lit']); > > > > > > if (mysql_num_rows($db_r['lit'])==1) { > > > // if record exists > > > > > > $lit = mysql_fetch_array($db_r['lit']); > > > // fetch literature record > > > > > > $file_description = $lit['description']; > > > $file_name = $lit['filename']; > > > $file_size = $lit['byte_size']; > > > $mime_type = $lit['mime_type']; > > > $binary_data = $lit['binary_data']; > > > > > > if (preg_match('/MSIE 5.5/', > > > $_ENV['HTTP_USER_AGENT']) || > > > preg_match('/MSIE 6.0/', $_ENV['HTTP_USER_AGENT'])) { > > > > > > header("Content-Disposition: filename=$file_name"); > > > header("Content-Type: application/zip"); > > > // headers for MSIE > > > > > > } else { > > > > > > header("Content-Disposition: attachment; > > > filename=$file_name"); > > > header("Content-Type: $mime_type"); > > > // headers for WC3-compliant clients > > > > > > } > > > > > > header("Content-Length:$file_size"); > > > header("Content-Transfer-Encoding: binary"); > > > header("Content-Description: $file_description"); > > > // common headers > > > > > > echo $binary_data; > > > // send binary data to client > > > > > > } else { > > > // if record does not exist > > > > > > $_SESSION['msg'] = "Invalid literature record ID."; > > > // error message > > > > > > } > > > > > > } else { > > > // if record id was not specified > > > > > > $_SESSION['msg'] = "The script you are trying to access > > requires a > > > valid literature record ID."; > > > // error message > > > > > > } > > > > > > header("Location: error.php"); > > > // redirect to error notification script > > > > > > > > > ?> > > > [end php] > > > > > > > > > > > > > > > > > > -- > > > PHP General Mailing List (http://www.php.net/) > > > To unsubscribe, visit: http://www.php.net/unsub.php > > > > > > > > > > -- > PHP General Mailing List (http://www.php.net/) > To unsubscribe, visit: http://www.php.net/unsub.php

« previous php.general (#142790) next »