Загрузить файл из MySQL с PHP - PullRequest
7 голосов
/ 20 июля 2011

Я храню изображения в моей базе данных mysql как blob. Я могу загрузить эти файлы с запросом в переменную, но как я могу отправить содержимое этой переменной в браузер как изображение?

Может ли html-файл содержать что-то подобное <img src="smtg.png">? Или как сделать запрос?

Ответы [ 2 ]

7 голосов
/ 20 июля 2011

Вам нужен скрипт, который выводит данные изображения.Используйте header () , чтобы установить соответствующий тип контента, а затем отобразите данные.Например:

header("Content-type: image/png");
...
echo $db_results['imgdata'];

Затем вызовите свой скрипт со страницы HTML следующим образом:

<img src="yourimagescript.php" />

В идеале вы должны хранить тип файла в столбце рядом с данными изображения,так что вы можете динамически установить правильный тип контента.

2 голосов
/ 20 июля 2011

PHP

<?php
mysql_connect("localhost","test","test");
mysql_select_db("test");
$imageid = (int)$_GET['imgid'];
$rs = mysql_query("select * from images where imageid=$imageid");
$row = mysql_fetch_assoc($rs);
$imagebytes = $row['imgdata'];
header("Content-type: image/jpeg");
print $imagebytes;
?>

HTML

<img src="location_to_your_php_script.php?imgid=21" alt="xxx" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...