我想在我的代码中显示一张图片,但由于某种原因,我得到了一个大的白色几乎空白页面,其中包含断开的链接img。我想显示图像以及任何其他信息。 我还想调整图像的大小(因此它不会覆盖整个页面)。 代码:
<?php
session_start()
?>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="initial-scale=1.0" />
<link rel="stylesheet" href="css/style.css" />
</head>
<div id="Container">
<div id="header">
<h1>Welcome!</h1>
</div>
<div id="navigation">
<?php
include_once "navigation.php";
?>
</div>
<div id="Content">
<?php
if (isset($_GET['search'])) {
$Name = $_GET['search'];
mysql_connect("localhost","root","") or die ("Could not connect to the server!");
mysql_select_db("pictures") or die ("That database could not be found!");
$query = mysql_query("SELECT * FROM picture WHERE Name='$Name'") or die ("The query could not be completed, please try again later!");
if (mysql_num_rows($wepquery) !=1) {
die ("That name could not be found!");
}
while ($row = mysql_fetch_array($query, MYSQL_ASSOC, 0)) {
$dbName = $row['Name'];
$dbCreator = $row['Creator'];
$dbDescription = $row['Description'];
$imageData = $row['Image'];
}
header("Content-type: image/jpeg");
if($Name != $dbName) {
die ("There has been a fatal error. Please try again.");
}
?>
<h2><?php echo $Name; ?></h2>
<br />
<table>
<tr><td>Creator: <?php echo $dbCreator;?></td></tr>
<tr><td>Description:<br /><?php echo $dbDescription;?></td></tr>
<tr><td>Picture:<br /><?php echo $imageData;?></td></tr>
</table>
<?php
} else die ("You need to specify a submission!");
?>
</div>
</div>
</html>
数据库:
id,Name,Creator,Description,Image_name,Image(mediumblob)。
您可以看到最后两个字段专用于图片。是的我知道PDO和MySQLi,但我只是想先完成这个代码。有什么帮助吗?
答案 0 :(得分:3)
图像需要由URL提供,或者需要将blob转换为数据URI,如下所示:
<table>
<tr><td>Creator: <?php echo $dbCreator;?></td></tr>
<tr><td>Description:<br /><?php echo $dbDescription;?></td></tr>
<tr><td>Picture:<br /><?php echo "<img src='data:image/jpeg;base64," . base64_encode( $imageData ) . "' />"; ?></td></tr>
</table>
答案 1 :(得分:0)
如果你想要图像,你需要用图像标签将其括起来。假设您的$ imageData包含图像的位置,那么您可以执行以下操作。
<img src='<?php echo $imageData;?>' ... />
如果您的$imageData
包含图像的实际二进制数据,则需要创建对php脚本的单独调用以返回imageData。并将调用作为img标记的src属性。
答案 2 :(得分:0)
您的路径是否正好指向图像?检查了“../../”?另一个问题,你的图像真的在图像标签内吗?必须有这样的东西:
<img src="<?php echo $imagePath; ? />