On Monday 10 November 2003 08:07 pm, Stephen Craton wrote: > I have a database which keeps some normal files in > LONGBLOBS. I then call up a file called download.php > to retrieve the file from the database, echo out > it’s contents, and it’s type, and all that so they > download it.
> However, if the user clicks the > download link, they download the actual download.php > file and if they open it, it’s blank. Here is where you begin to get confused. The output of your php page will always be called download.php, no matter what is in it. The users are not downloading the contents of your download.php file since that file is obviously not blank. Rather they are downloading the output generated by your download.php, which is nothing. > I’ve attached > the code to download.php. Any ideas why this is > happening and how to fix it? Are you getting any PHP errors? (Check your log.) Are you getting any MySQL errors? (You should include an error check in your statements.) If no to the above, then break the program down into parts and output debug statements. E.g. echo that the if conditional is being executed, echo the contents of the first SQL statement, echo the variables of the output, etc. Hope this helps. --John > <?php > > if (isset($HTTP_GET_VARS['id'])) { > > > include('Connections/default.php'); > > > mysql_select_db($database_default, $default); > > $id = > $HTTP_GET_VARS['id']; > > > > $query = "SELECT * > FROM files WHERE id='$id'"; > > $result = > mysql_query($query, $default); > > $row = > mysql_fetch_array($result); > > $new = > $row['downloads'] + 1; > > $query = "UPDATE > files SET downloads='$new' WHERE id='$id'"; > > $result = > mysql_query($query, $default); > > > > $type = > $row["ftype"]; > > $name = > $row["fname"]; > > $size = > $row["fsize"]; > > $id = $row["id"]; > > $data = > urldecode($row["fdata"]); > > > > > header("Content-type: $type"); > > > header("Content-length: $size"); > > > header("Content-Disposition: attachment; > filename=$name"); > > > header("Content-Description: PHP Generated Data"); > > > > echo $data; > > exit(); > > } > > ?> > > > > > > Thanks, > > Stephen Craton > > HYPERLINK > "http://www.melchior.us"http://www.melchior.us -- > HYPERLINK > "http://www.melchior.us/portfolio"http://www.melchio >r.us/portfolio > > > > > > > --- > Outgoing mail is certified Virus Free. > Checked by AVG anti-virus system > (http://www.grisoft.com). Version: 6.0.532 / Virus > Database: 326 - Release Date: 10/27/2003 -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php