Bezdepbonusu7Программирование: статьи и ответы

Вопрос

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

Автор вопроса: user701510Ответов: 3

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

downloadphphyperlink

Ответы

Ответ 1 · рейтинг 2 · M. Meiboom

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

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

Ответ 2 · рейтинг 3 · fire

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

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

Ответ 3 · рейтинг 2 · SERPRO

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

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы