Я хочу отобразить изображение вместо его загрузки (изображение в базе данных blob)

Я хочу отобразить изображение вместо его загрузки.

У меня есть изображение в таблице базы данных, столбец как BLOB.

Этот фрагмент загружает изображение, но вместо этого я хочу его отобразить:

$query = "SELECT * FROM upload";
$result  = mysql_query($query);
$row = mysql_fetch_array($result);
$content =  $row['content'];
$size =  $row['size'];
$type =  $row['type'];
header("Content-length: $size");
header("Content-type: $type");

// The following headers make the image download, but I don't want it to
// download, I want to show the image. What should I do?
// header("Content-Disposition: attachment; filename=$name");

echo $content;
php
4 голоса | спросил Bharanikumar 3 32010vEurope/Moscow11bEurope/MoscowWed, 03 Nov 2010 19:50:16 +0300 2010, 19:50:16

3 ответа


0

если вы хотите использовать это более динамично, создайте скрипт из исходного кода и назовите его так:

<img src="image.php?imageid=$myImageID" />

и ваш скрипт:

$myImageID = $_GET["myImageID"];
$query = "SELECT * FROM upload where id='"+$myImageID+"'";
$result  = mysql_query($query);
$row = mysql_fetch_array($result);
$content =  $row['content'];
$size =  $row['size'];
$type =  $row['type'];
header("Content-length: $size");
header("Content-type: $type");
//header("Content-Disposition: attachment; filename=$name");---> this headers make system to download , but i dont want to download, i want to show image, what  should i do ,
echo $content; ?>"
ответил CristiC 3 32010vEurope/Moscow11bEurope/MoscowWed, 03 Nov 2010 20:05:55 +0300 2010, 20:05:55
0

Обратное расположение содержимого attachment - это inline. Попробуйте это:

header("Content-Disposition: inline; filename=$name");
ответил meagar 3 32010vEurope/Moscow11bEurope/MoscowWed, 03 Nov 2010 20:00:11 +0300 2010, 20:00:11
0

Вы должны быть уверены, что ничего кроме ваших заголовков и содержимого изображения не отправляется клиенту. возможно вы хотите сделать выход после echo $ content; это не лучшая практика, а также не гарантирует, что перед выводом содержимого изображения ничего не было отправлено, но оно должно выполнять свою работу.

ответил Andreas Linden 5 52010vEurope/Moscow11bEurope/MoscowFri, 05 Nov 2010 18:01:28 +0300 2010, 18:01:28

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132