Получить изображение длинного необработанного типа данных, хранящегося в базе данных Oracle в php - PullRequest
0 голосов
/ 30 апреля 2018

Я пытался отобразить изображение, хранящееся в базе данных оракула Я получаю это как данные декодирования Я пытался этот код, но не работает

первый путь

  $img= studimage::select('studimage')->where('studnum',$id)->first();
    header("Content-type: image/jpeg");

   echo ($img->studimage) ;

втор-путь

echo '<img src="data:image/jpg;base64,'. base64_encode($img->studimage). '" />'; 

два способа не работает :(

1 Ответ

0 голосов
/ 30 апреля 2018

Я использую эту же функциональность в одном из моих проектов, пожалуйста, проверьте мой код ниже

Вы можете сделать страницу, которая будет отображать изображение

<img src="image.php?id=123" />

Эта страница image.php будет иметь это:

$sql = "SELECT image FROM images WHERE image_id = " . (int) $_GET['id'];
$stid = oci_parse($conn, $sql);
oci_execute($stid);
$row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS);
if (!$row) {
header('Status: 404 Not Found');
} else {
$img = $row['IMAGE']->load();
header("Content-type: image/jpeg");
print $img;
}

Или, вы можете кодировать base64 в src (заметьте, не все браузеры справляются с этим хорошо):

<img src="data:image/jpeg;base64,<?php echo base64_encode($img); ?>" />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...