скачать файл без сохранения на сервере - PullRequest
1 голос
/ 26 апреля 2010

Или есть возможность загрузить файл, не сохраняя его на сервере? Я получаю данные из базы данных и хочу сохранить их. Doc (MS Word) файл.

if(isset($_POST['save']))
{   
$file = "new_file2.doc";
$stringData = "Text text text text...."; //This data put in new Word file

$fh = fopen($file, 'w');    
fwrite($fh, $stringData);
fclose($fh); 

header('Content-Description: File Transfer');
header('Content-type: application/msword');
header('Content-Disposition: attachment; filename="'.$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);    
unlink($file);
exit;

}

Как должен выглядеть код без этого: "$ fh = fopen ($ file, 'w');
fwrite ($ fh, $ stringData); fclose ($ ФХ);» и это "unlink ($ file);"

Я надеюсь понять, что мне нужно введите код здесь

Ответы [ 2 ]

5 голосов
/ 26 апреля 2010

Вам просто нужно вывести заголовки, а затем содержимое:

header(...);

echo $stringData;

Нет необходимости играть с любыми файлами.

0 голосов
/ 26 апреля 2010
header("Content-type: application/octet-stream");    
header("Content-Disposition: attachment; 
filename=\"$_fileName\"");
ob_clean();
readfile($_filePath);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...