mysql — PHP: как отобразить изображение из BLOB-объекта

У меня есть небольшая проблема здесь.
Я пытаюсь преобразовать изображение в строку base64, после чего я хочу сохранить строку в BLOB-объекте в MySQL.
Таким образом, блоб может отображаться в мобильных приложениях.

это мой код:

$data = file_get_contents($_FILES["picture"]["tmp_name"]);
$image = base64_encode($data);

Я уже успешно сохранил BLOB-объект в MySQL, но не могу отобразить изображение на веб-сайте.

<td> <img src="<?php echo base64_decode($user->getPicture()); ?>"></td>

потому что результат: ������� and many more

Я ошибся ?
Пожалуйста, поправьте меня 🙂

0

Решение

src Атрибут изображения ДОЛЖЕН указывать на URL. Вы не можете сбросить необработанное двоичное содержимое изображения и ожидать, что оно будет работать. Браузер возьмет эти необработанные двоичные данные и попытается попасть на исходный сервер страницы и запросить эти данные, как если бы это был URL-адрес файла. то есть у вас есть это на странице, загруженной с http://example.com/foo/bar/baz.php:

<img src="blahblahblahblah" />

что приведет к запросу браузера

http://example.com/foo/bar/blahblahblahblah

Если вы хотите встроить свое изображение в страницу, то вы должны использовать URI данных:

<img src="data:image/jpeg;base64,<?php echo $base64_encoded_image ?>" />
5

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector