我搜索了解决方案,但他们没有工作! 我试图显示我的数据库中的图像[在Eventss表中]该行被称为图像,它是BLOB格式。 这是为人们显示数据的页面,我专注于php知道,我将在确定如何显示图像后修复if条件。
<?php
mysql_connect("***", "***", "***")
or die("<p>Error connecting to database: " . mysql_error() . "</p>");
mysql_select_db("project")
or die("<p>Error selecting the database ectoday: " . mysql_error() . "</p>");
session_start();
$select_query = "SELECT * FROM Eventss WHERE id=". $_SESSION["event_id"];
$result = mysql_query($select_query);
if($result)
{
if (mysql_num_rows($result) > 0)
{
while($row = mysql_fetch_assoc($result))
{
echo $row['title']. "<br>";
if ($row['image'] !== NULL)
{
$poster = $row['image'];
echo $row['content']. "<br>";
echo $row['event_date']. " [" . $row['event_time']. "]"."<br>";
echo $row['location']. "<br>";
}
else
{
echo $row['content']. "<br>";
echo $row['event_date']. " [" . $row['event_time']. "]"."<br>";
echo $row['location']. "<br>";
}
}
}
else
{
echo "Sorry, there is no more data for this event";
}
}
?>
<html>
<head><head>
<body>
<img src="<?php echo $poster; ?>" width="175" height="200" />
</body>
</html>
答案 0 :(得分:0)
如果它存储在BLOB中,则它很可能是base64编码的,并且该字段包含实际的图像数据,而不是对文件系统上的图像的引用。您必须将其写入文件并使用标准img标记显示它,否则......
<img src="data:image/jpeg;base64, HereGoesYourBase64fromBLOB..." />
...但请注意,bae64编码的图像数据可能不是最适合带宽的解决方案。将静态资源存储在文件系统中会更好。
答案 1 :(得分:0)
假设您没有存储该图像的路径,但是图像内容本身并且它是jpg(您可以更改为png或您拥有的任何类型)。如果是这样,请使用src的数据URI语法:
<img src="<?php
echo 'data:image/jpg;base64,'.base64_encode($poster); ?>" width="175" height="200" />