2017-07-04 4 views
0

Ich versuche, die Datei, die durch den POST-Wert übergeben wird, zu downloaden. Wenn der Dateiname jedoch "Functional requirements example" ist, wird der Name "__Funktional" lauten.PHP Download Hinzufügen von Unterstrichen

Mache ich etwas sehr falsch hier? Die heruntergeladene Datei befindet sich in einem Ordner namens ordner1. Unsicher, wie man die Datei von dort herunterlädt. Irgendwelche Ideen, wie ich das beheben kann, damit es richtig herunterlädt?

<?php 
    $ticType = $_POST['submit_param']; 
    header('Content-type: text/plain'); 
    header('Content-Disposition: attachment; filename=\"/'.$ticType.'\"'); 
    readfile('folder1/'.$ticType); 
    ?> 
+1

Entfernen Sie Backslashes und versuchen Sie es erneut .. filename = "/'.$ ticType. '"' – 4EACH

+0

Dies hat es getan, danke – Lain

Antwort

0

Wenn ich nicht im Irrtum bin, müssen Sie die Dateinamen in ' oder " nicht umschließen, weil sie als Zeichen des Namens behandelt werden. Sie verwenden zwei ungültige Zeichen: / und ", die in einem Dateinamen nicht verwendet werden können, also ersetzt PHP sie für jedes ungültige Zeichen durch einen Unterstrich. Entferne diese Zeichen und du solltest es lösen!