11. januar 2010 - 03:10Der er
8 kommentarer og 1 løsning
Download af dokument fra MySQL virker ikke
Hejsa
Jeg er ved at lave, så jeg kan upload og gemme et dokument i MySQL. Upload af dokumentet virker fint og det gemmer fint i databasen. Download virker egentlig også, for jeg får et dokument ned, men word og excel kan ikke genkende dokumenterne efter download. Der sker et eller andet med dokumenterne undervejs. Jeg ved ikke om det er i uploaden eller downloaden problemet findes
mysql_query($query) or die('Error, query failed');
}
---------------------
// download script if(isset($_GET['id'])) {
require("Config.php"); // Variabler til mysql hentes mysql_connect($mysql_host, $mysql_user, $mysql_pw); mysql_select_db($mysql_db); // Der åbnes for databasen defineret i config.php.
$query = "SELECT FileName, type, size, content "."FROM Dokumenter WHERE id = '".$_GET['id']."'";
Jeg kan forestille mig at det har noget med måden du escaper på at gøre, selvom jeg ikke lige kan se fejlen. Jeg ville prøve at Base64 indkode det før indsættelse. Det bruger lidt mere plads, men så undgår du til gengæld den slags problemer.
Er det virkelig nødvendigt at fylde basen med dokumenter? I visse tilfælde er det en god idé at smide dem i databasen, men i langt de fleste tilfælde kan det bedre betale sig at have dokumenterne på serveren og filnavnet og evt. stien i databasen.
Jeg har fundet ud af at hvis jeg skriver indholdet ud til en temp fil, så er dokumentet ok, så det må være noget i headeren eller måske den måde som internet explorer håndtere det på?
Det jeg lavede som test var nedenstående
f.eks. $fp = fopen('Dokumenter/test.doc', 'w'); fwrite($fp, $content); fclose($fp);
P.S. mediumblob er stort nok for mig, for mine filer er under 100kb
Jeg har fundet fejlen nu. I mit php download script så startede mit php tag i linie 2, så derfor blev mine dokumenter currupte
efter jeg slettede det, så virkede det. f.eks.
-------------------- <--dokument start
<?php ...
Synes godt om
Slettet bruger
12. januar 2010 - 00:18#9
Ja, den slags slåfejl kan jo ske.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.