jstorelv Skrevet 19. september 2008 Rapporter Del Skrevet 19. september 2008 (endret) Jeg har laget en kode for å laste ned filer som jeg har lagret i en MySQL database. Det fungerer fint i FireFox, men i IE7 funker det ikke. Hvis jeg sier Save i IE7 når jeg skal åpne fila ser jeg at fila som lastes ned blir 0KB. Dette er koden som jeg bruker: <?php $id=strtolower($_GET[id]); $type=strtolower($_GET[type]); if($id) { MYSQL_CONNECT("localhost","username","password"); mysql_select_db("db_name"); $query = 'select bin_data,filetype, filename from '.$type.' where id='.$id; $result = @MYSQL_QUERY($query); $data = @MYSQL_RESULT($result,0,"bin_data"); $type = @MYSQL_RESULT($result,0,"filetype"); $size = @MYSQL_RESULT($result,0,"filesize"); $filename = @MYSQL_RESULT($result,0,"filename"); //echo $filename; Header("Content-length: $size"); Header("Content-type: $type"); header('Content-Disposition: attachment; filename="'.$filename.'"'); echo $data; }; ?> Noen som har noen ideer om hva det kan være? Endret 19. september 2008 av jstorelv Lenke til kommentar
Epower Skrevet 19. september 2008 Rapporter Del Skrevet 19. september 2008 Prøv å legge til header('Cache-Control: '); header('Pragma: '); Lenke til kommentar
jstorelv Skrevet 19. september 2008 Forfatter Rapporter Del Skrevet 19. september 2008 Prøv å legge til header('Cache-Control: '); header('Pragma: '); Sette Pragma: no-cache og Cache-Control: no.cache ?? Lenke til kommentar
jstorelv Skrevet 19. september 2008 Forfatter Rapporter Del Skrevet 19. september 2008 Har endret koden til dette nå uten at det ble noe bedre: <?php $id=strtolower($_GET[id]); $type=strtolower($_GET[type]); if($id) { // you may have to modify login information for your database server: MYSQL_CONNECT("localhost","username","password"); mysql_select_db("db_name"); $query = 'select bin_data,filetype, filename from '.$type.' where id='.$id; $result = @MYSQL_QUERY($query); $data = @MYSQL_RESULT($result,0,"bin_data"); $type = @MYSQL_RESULT($result,0,"filetype"); $size = @MYSQL_RESULT($result,0,"filesize"); $filename = @MYSQL_RESULT($result,0,"filename"); //echo $filename; header("Pragma: public"); header("Expires: 0"); // set expiration time header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Content-Description: File Transfer"); header('Content-Disposition: attachment; filename="'.$filename.'"'); header("Content-Type: $type"); header("Content-Transfer-Encoding: binary"); header("Content-length: $size"); echo $data; }; ?> Lenke til kommentar
jstorelv Skrevet 19. september 2008 Forfatter Rapporter Del Skrevet 19. september 2008 Og der fant jeg ut av hva det var selv..... Hadde glemt å ta med filesize i spørringen min fra db'en.... Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå