我正在进行一个涉及检索图像的项目,我的代码没有错误,但图像显示为图像图标。仅显示一个图像。
$query = "SELECT * from cbir";
$result =mysql_query($query) or die('Error, query failed');
while($row = mysql_fetch_array($result)){
if (abs($red_count - $row['red_count'])> 50 && abs($blue_count - $row['blue_count'])> 50 && abs($green_count - $row['green_count'])> 50 ){
header("content-type: image/jpeg");
echo $row['image'];
}
}
试试这个
$image = base64_decode($thumb);
/** check if the image is db */
if($image!=null)
{
$db_img = imagecreatefromstring($image);
Header("Content-type: image/jpeg");
imagejpeg($db_img);
}
exit;
您需要创建一个PHP脚本,该脚本将根据图像的唯一ID获取图像,为了这个答案,我们将其称为imageId,并将其假装在一个名为image.PHP的PHP文件中
$query = "SELECT * from cbir WHERE imageId = ".mysql_real_escape_string($_GET['imageId']);
$result = mysql_query($query) or die('Error, query failed');
while($row = mysql_fetch_array($result)){
header("content-type: image/jpeg");
echo $row['image'];
}
然后,您需要在显示脚本中执行以下操作。
$query = "SELECT * from cbir";
$result = mysql_query($query) or die('Error, query failed');
while($row = mysql_fetch_array($result)){
if (abs($red_count - $row['red_count'])> 50 && abs($blue_count - $row['blue_count'])> 50 && abs($green_count - $row['green_count'])> 50 ){
echo '<img src="image.php?imageId='.$row['imageId'].'" />';
}
}
我还可以指出,你不应该再使用mysql函数了,你至少应该使用mysqli,但最好是PDO。