实现此代码时,我没有图像
<?php
include('confing.php');
echo '<img src="getImage.php?id=2" >';
?>
file =&gt; getImage
<html >
<body>
<?php
include('confing.php');
$id = $_GET['id'];
$sql="SELECT * FROM images WHERE id=$id ";
$result=mysqli_query($connection,$sql);
$row = mysqli_fetch_assoc($result);
// Set the content type header - in this case image/png
header("Content-Type: image/png");
echo $row['content'] ;
?>
体&GT; HTML&GT; 身体 HTML 体&GT; HTML&GT; 身体 HTML 体&GT; HTML&GT; 身体 HTML
答案 0 :(得分:0)
您遇到的错误:
Undefined index ID
:您似乎在没有传递ID参数的情况下调用它。显然你应该检查一下。但是,您应该在代码中添加一些错误检查,以确保在未传递ID时不会崩溃,或者ID无效。
Undefined variable $connection
:未设置数据库连接变量。也许你config.inc包括没有实际设置连接?或者你可能有变量名错了?您需要检查config.inc以找出发生这种情况的原因。无论如何,这会直接导致下一个错误......
mysqli_query expects connection parameter
:由于未设置$connection
变量,因此无法运行您的数据库查询。这里的一些错误检查会很有帮助,即使您对连接变量进行了整理,因为可能还有其他原因导致连接失败。
mysqli_fetch_assoc expects result parameter
:发生这种情况是因为未运行查询而未设置结果变量。您也应该为此添加一些错误检查,因为可能还有其他原因导致查询无法运行。
错误甚至没有达到header()
函数调用,这也会失败,因为程序已经输出了一些内容。您应该从程序顶部删除<html><body>
标记,因为它们不是输出图像所必需的;事实上,它们会导致图像无效。
答案 1 :(得分:-1)
你的专栏:
echo '<img src="getImage.php?id=2">';
会将此输出到您的html页面中:
<img src="getImage.php?id=2">
其次,它不会加载,执行和插入getImage.php的结果。
这是一个解决方案:
第一页:
<?php
include('getImage.php');
$id = $_GET['id'];
$img = getImage($id);
echo "<img src='$img' >";
?>
getImage.php:
<?php
include('confing.php');
function getImage($id){
$sql="SELECT * FROM images WHERE id=$id ";
$result=mysqli_query($connection,$sql);
$row = mysqli_fetch_assoc($result);
return $row['content'] ;
}
?>