sql >> Database teknologi >  >> RDS >> Mysql

Se filen gemt i databasen ved hjælp af php på browseren

Ifølge din kode, $row[1] er "filnavnet". Indholdstypeoverskriften skal indeholde indholdstypen i stedet, dvs. fil mime-typen, for eksempel:

header('Content-type: application/pdf');

Hvis du vil tilføje et filnavn:

header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename='.$row[1]);
print $data;

Sørg for at $data er indholdet af filen, noget du kan tage fra readfile() for eksempel.

Læs mere om manualen:http://php.net/manual/en/function .readfile.php

Husk på, at selvom PDF og billeder nemt kan ses af en browser, tror jeg, at Excel har brug for nogle ad hoc plugin til det.

Et mere komplet eksempel lige ud af manualen , for at give dig en mere grundig idé (ikke alle disse overskrifter er nødvendige, og du bør ændre andre i overensstemmelse med din kode):

header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));

ob_clean();
flush();
readfile($file);

exit;



  1. Vis dagens emne

  2. mySQL forespørgsel om gentagne begivenheder

  3. Hvordan opretter man funktion i PL/SQL?

  4. MySQL Vælg rækker med en tast, eller fald tilbage for at vælge som standardtast