Hallo Leute,
ich schreibe gerade an einem Download-Skript.
Das Skript zeigt erst mal alle Dateien eines bestimmten Verzeichnisses an, durch Klick auf den Dateinamen soll die Datei heruntergeladen werden.
Nun ist das ja an sich kein Problem, einfach die entsprechenden header schicken und dann per readfile() die Datei an den Browser senden.
Was mir aber ziemliche Probleme macht, ist die Codierung des Dateinamens. Die Dateien haben mehrere Leerzeichen im Namen und damit kommt das Skript nicht klar.
header("Content-Transfer-Encoding: none");
header("Content-type: application/x-download");
header("Content-Disposition: attachment; filename=$file;");
header("Accept-Ranges: bytes");
header("Content-length: ".filesize($file));
Sowohl rawurldecode als auch urldecode machen aus den Leerzeichen bei Client entweder ein + oder %20.
Hat jemand eine Lösung?