У меня проблема с функцией загрузки.В моей системе мне нравится делать безопасные загрузки.Файлы в моем корне не доступны через URL.Я установил права ftp un 700. Только сервер может получить доступ.После этого я сделал функцию, которая может загрузить файл для пользователя.В этот момент я могу выполнить сессию проверки безопасности.
Но когда серверы загружают файл с этим кодом, файл открывается в браузере.С exe в браузере показываются странные буквы.
// Bestandsnaam
$file = 'bestanden/test.exe';
// Ophalen bestand
if (file_exists($file)) {
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, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
ob_clean();
flush();
readfile($file);
exit;
}
Я хочу сохранить как поле, когда пользователи получают доступ к URL.
Я хочу использовать эту функцию следующим образом:
<a href="www.site.nl/downloadfunction/file">download</a>
Есть ли у кого-нибудь решение.Я пробовал Javascript document.execCommand('SaveAs',null,bestand);
вместо файла readfile, но он не работает в Firefox.
Спасибо за помощь!