как создать ссылку для загрузки файла в файл, хранящийся в базе данных MYSQL, с помощью PHP?

Я знаю, что могу просто загрузить файл в папку на моем сервере, сохранить местоположение каталога в базе данных MYSQL и создать ссылку для загрузки на основе этого местоположения каталога, но что происходит, когда вы сохраняете файл, такой как pdf или zip-архив, непосредственно на база данных MYSQL? Как вы извлекаете эти данные и затем создаете ссылку для скачивания файла?


person user701510    schedule 14.11.2011    source источник


Ответы (3)


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

header("Content-type: $type");
header("Content-length: $size");
header("Content-Disposition: attachment; filename=$name");
header("Content-Description: PHP Generated Data");
echo $data;

Полный пример на http://onlamp.com/pub/a/php/2000/09/15/php_mysql.html?page=3

person M. Meiboom    schedule 14.11.2011

Вы не должны хранить файловые данные в своей базе данных, для этого и существует файловая система!

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

person fire    schedule 14.11.2011

Вы можете создать php-файл, например «download.php», в который помещаются заголовки этого типа файла (и размера) и эхо-содержимое сохраненного файла.

person SERPRO    schedule 14.11.2011