Intereting Posts

Мне нужна моя страница PHP, чтобы показать мой образ BLOB из базы данных mysql

Поэтому мой последний вопрос заключался в том, как показать мой метод techID в результате поиска:

Я пытаюсь, чтобы моя страница «Подробности» ссылалась на две отдельные части моего сервера, которые связаны через techID

Мой новый вопрос все еще находится на этой странице. Я добавил также эхо-изображение. но у меня возникли проблемы с использованием Blob и его отображение моего изображения, а не двоичных данных JPEG. Я пытался найти другой экземпляр этого, но не могу найти исправление моей ошибки.

 //Header ('Content-type: image/jpeg') echo "<dt><strong>Technician Image:</strong></dt><dd>" . '<img src='.$row2['image'].' width="290" height="290">' . "</dd>"; 

а также

 $query_Recordset2 = "SELECT * FROM technician WHERE techID=" . $row1["techID"] ; $Rs2 = mysql_query($query_Recordset2) or die(mysql_error()); 

Единственные изменения, которые я внес в мой последний вопрос (очевидно, включая исправление, которое я дал, что сработало).

Я не понимаю, где и как поставить 'Content-type: image/jpeg' чтобы моя страница распознавала связанное изображение, это MIME TYPE image/jpeg .

То, что я вижу на моей странице, это

Техник Изображение: E j i` = 7f $ D o " b Ckkc R ^ M ; n ~ 0 & m) J RE) JDRE) JDRE) JDRE) JDRE) JDRE) JDSjR) + N.R, U i n9, QX ~ {( ̮ : 2 12 " aV7 6 { LP [ W گ R $ + LMc'hM 5 o PA | ګ .8 E ģ Rn 1 [ { 3> rY X ; Ǖ u z ' vf N 葟 z Q k 3 O ܨ ۀ ? S , N [{+ D ; ' $ $ & iJR ) JR ) JR ) JR (JR3) JR3) JR4) JR4) JR4) JR4) JR4) JR2) & thetas; ширина = "290" height = "290">

Очевидно, я удалил средний кусок, поэтому он не массивный. есть небольшое поле «Сломанное изображение», которое появляется напротив, и когда я нажимаю правой кнопкой мыши и выбираю «Открыть изображение в новом окне», URL-адрес, который он помещает, – это просто Content-type: или я получаю страницу запрещенного доступа с URL-адресом http:// localhost/Sim5Server/Pages/%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD%10JFIF%EF%BF%BD%01%02%EF%BF%BD%EF%BF%BDd%EF%BF%BDd%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BD%EF%BF%BDC%EF%BF%BD

Я разместил пробел в этом URL-адресе, так как это не ссылка для Интернета.

Я использовал обычный BLOB-тип, поскольку мне это просто нужно как маленькое изображение менее 64 КБ

В вашем текущем случае у вас есть два варианта upfront.

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

 <img src="data:image/jpeg;base64,<?php echo base64_encode($image); ?>" /> 

Версия для копирования / вставки с использованием существующего кода:

 echo '<dt><strong>Technician Image:</strong></dt><dd>' . '<img src="data:image/jpeg;base64,' . base64_encode($row2['image']) . '" width="290" height="290">' . '</dd>'; 

Второй способ – создать «образный» PHP-файл, который принимает идентификатор изображения в базе данных в качестве параметра строки запроса и выводит изображение. Итак, ваш HTML будет выглядеть примерно так:

 <img src="image.php?id=<?php echo $image_id; ?>" /> 

И ваша страница PHP будет выглядеть примерно так:

 <?php $id = (isset($_GET['id']) && is_numeric($_GET['id'])) ? intval($_GET['id']) : 0; $image = getImageFromDatabase($id); // your code to fetch the image header('Content-Type: image/jpeg'); echo $image; ?> 

Единственный способ вывода изображения с той же страницы, что и документ, – с помощью uri данных .

 echo "<dt><strong>Technician Image:</strong></dt><dd>" . '<img src="data:image/jpeg;base64,'. base64_encode($row2['image']). '" width="290" height="290">' . "</dd>"; 

Правильный код должен быть следующим. Вы должны использовать stream_get_contents () для изменения идентификатора ресурса в строку.

 <img src="data:image/jpeg;base64,<?php echo base64_encode(stream_get_contents($row2['image'])); ?>" /> 

Я считаю, что лучшим решением является сохранение пути изображения в базе данных, а не сохранение всего изображения в виде BLOB. А затем для показа изображения на веб-странице установите свойство src тега img в путь, хранящийся в базе данных.