PHP: Загрузить файл при нажатии кнопки?

Я создал форму, которая, когда нажата содержащаяся кнопка, должна открыть диалог загрузки, чтобы загрузить определенный файл. Файл размещен на том же сервере.

Я пытался:

header("Content-Type: application/force-download"); header("Content-Disposition: attachment; filename=" . $file . '"'); 

Где $ file – это локальный путь + имя файла, например c: \ mypath \ myfile.xls. Однако это не работает. Он предлагает мне файл, но его недействительный файл. Как еще я мог это сделать?

Примечание. Я написал c: \, потому что он все еще на моей локальной машине для тестирования.

Благодаря!

Related of "PHP: Загрузить файл при нажатии кнопки?"

Попробуй это

 header("Pragma: public", true); header("Expires: 0"); // set expiration time header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header("Content-Type: application/force-download"); header("Content-Type: application/octet-stream"); header("Content-Type: application/download"); header("Content-Disposition: attachment; filename=".basename($file)); header("Content-Transfer-Encoding: binary"); header("Content-Length: ".filesize($file)); die(file_get_contents($file)); 

Я думаю, что функция file_get_contents () больше не работает с PHP 5.0.3

Попробуй это :

 $ path = "http://www.example.com/files/";
 $ filename = "abc.gif";

 Заголовок ( "Content-Type: изображение / GIF");
 header («Content-Disposition: attachment; filename =». $ filename);
 header («Cache-control: private»);
 header ('X-Sendfile:'. $ path);
 ReadFile ($ путь);
 Выход;

PHP работает на стороне сервера, вы не можете загружать файлы на клиентской машине.

Загрузите файлы на сервер, а затем укажите путь для загрузки.

Путь должен быть указан из корня сайта … переместите файл ex: путь к скрипту: C: /wamp/www/test.php файл C: /script.js, затем:

 if(file_exists('../../user.js')) { echo "OK"; } 

Еще плохой идее ..