2011-05-09 3 views
3

у меня есть некоторые данные, хранящиеся в базе данных MySQL .. я хотел бы показать данные, сохраненные изображения вместе с другими данных в .php странице ..Покажите BLOB изображение PHP MySQL вместе с другими данными

если i получить данные из базы данных и использовать header("Content-type: image/jpeg"); его невозможно показать изображение с другими данными php .. есть ли другой способ?

+0

Браузеры запрашивают изображения в виде отдельных ресурсов, поэтому вам нужна другая «страница» для обработки запроса изображения. –

+0

просто скажите нам AJAX? – Sudantha

+4

Вы знакомы с HTML, не так ли? '' где image_fetcher.php ищет BLOB, а затем возвращает правильный заголовок и данные –

ответ

4

Если вы установите заголовок для изображения/jpeg, который обрабатывает всю вашу страницу как файл изображения. Вы хотите, чтобы данные вставлялись в держатель изображения.

Попробуйте что-то вроде этого

<img alt="Embedded Image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." /> 

Где вы будете рядом эхо данных больших двоичных объектов в изображении ЦСИ

<img alt="Embedded Image" src="data:image/png;base64,<?php echo $image->blob_data; ?> "/> 
+0

Интересный подход. Я должен помнить об этом. –

+0

Мэтт - как бы вы еще? Не снисходительно, а я не знал, что есть другой подход? Что еще можно сделать здесь, если он динамически передает данные в изображение? – Atticus

+1

@Atticus Способ, которым я бы приблизился к этой проблеме, как рекомендуется в комментариях в вопросе, создает другой скрипт, который возвращает изображение, а затем использовать 'src =" get_picture.php? Id = blah "для получения изображения на страницу. Раньше не было известно о URI данных. –

2

Это зависит от того, как вы сохранили вы данные, но иногда вам нужно преобразовать данные в base64. Попробуйте это

echo '<img src="data:image/png;base64,' . base64_encode($blob_data) . '"/> 
Смежные вопросы