отображение изображения, сохраненного в виде BLOB-объекта в БД MySql - PullRequest
0 голосов
/ 02 апреля 2011

Я создаю блог, и немного кода ниже, где блог распечатывается.У меня есть блоб, сохраненный в моей базе данных mysql, и я пытаюсь превратить его в изображение.imageName, imageType, imageSize, imageContect все получают значения, когда я запускаю свой код.Проблема в том, что переменная imageContent отображает загрузку случайных символов, а не изображения.кажется, что причина этого в заголовках, но я не знаю, что делать.Может ли кто-нибудь помочь мне перекодировать изображение.спасибо

while($row = mysql_fetch_array($result)) 
{

    echo "name ".$row['imageName'].'<BR>';
    echo "type ".$row['imageType'].'<BR>';
    echo "size ".$row['imageSize'].'<BR>';

    echo '<B>'.$row['blogTitle'].'</B><br />';

    echo '<A HREF = http://www.alcaeos.com/blog/displayblogProcess.php?mode=edit&blogID='.$row['blogID'].'>Edit</A>&nbsp;&nbsp;&nbsp;&nbsp;';       
    echo '<A HREF = http://www.alcaeos.com/blog/displayblogProcess.php?mode=delete&blogID='.$row['blogID'].'>Delete</A><BR />';


    echo $row['blog'].'<br />';

    header("Content-length:".$row['imageSize']);
    header("Content-type:.".$row['imageType']);
    header("Content-Disposition: attachment; filename=".$row['imageName']);
    echo $row['imageContent'].'---------<br /><br /><br />';

}

Ответы [ 2 ]

0 голосов
/ 02 апреля 2011

Пропустите Content-length и Content-disposition, просто используйте Content-type и установите для него допустимый тип MIME.

Предполагая, что это JPEG, вы должны сделать следующее:

header( 'Content-type: image/jpeg' );

Проверьте эта ссылка тоже

0 голосов
/ 02 апреля 2011

Вот довольно простой пример отображения изображения, хранящегося в виде BLOB-объекта.

<?php

require_once ('./includes/db.inc.php'); // Connect to the db.

//let the browser know its an image
header("Content-type: image/jpeg");

// Make the query.
$query = "SELECT thumbnail FROM items where item_id=" . $_GET['item_id'];
$result = @mysql_query ($query);

if ($row = mysql_fetch_array($result, MYSQL_ASSOC)){
  echo $row['thumbnail'];
  }

mysql_close(); // Close the database connection.
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...