Jeg er ved at lave et site, hvor jeg skal præsentere nogle af mine skoleprojekter. Til dette formål, vil jeg kunne uploade filer til hjemmesiden og derved gøre dem downloadbare.
Jeg har læst mig til at det mest effektive er at have et bibliotek på webserveren der indeholder filerne med et unikt navn og en database, der holder styr på deres rigtige navn.
Spørgsmålet er så. Hvordan downloades filerne til klienterne i deres originale navn?
Du kunne vel starte med at kopiere filen til et "downloaddir", og her omdøbe til originalt navn, (som står i DB'en), og derefter sende den til download?
function download_file($file, $new_filename) { if (file_exists($file)) { global $HTTP_USER_AGENT;
if (strstr($HTTP_USER_AGENT,"MSIE 5.5")) { // had to make it MSIE 5.5 because if 6 has no attachment; in it, it defaults to inline $attachment = ""; } else { $attachment = "attachment;"; } header("Cache-control: max-age=31536000"); header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); // Date in the past header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); // always modified header("Content-Length: " . filesize($file)); header("Content-type: application/octet-stream"); header("Content-disposition: $attachment filename=\"{$new_filename}\""); header("Content-Transfer-Encoding: binary"); $fp = fopen($file, 'rb'); fpassthru($fp); return true; } else { echo 'ERROR'; return false; } }
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.