我在检索最近保存在数据库中的图像时遇到问题。它改为显示这个破碎的图像图标
表单页码:
<form id "formUpload" action="uploadimage.php" method="POST"enctype="multipart/form-data" target="iframe">
<input type="file" name="image" id "image" style="background-color:#000">
<br>
<input type="submit" value="Upload">
</form>
<iframe name ="iframe" width="140" height="216">
<img style="min-height: 216; max-width: 140; max-height: 216px;" id="image" />
<br />
<br />
</iframe>
上传图片代码(位于不同的文件中):
$ lastid用于获取数据库中最新保存的图像,以显示在表单页面上。
include("databaseconnect.php");
//file properties
$file = $_FILES['image']['tmp_name'];
if(!isset($file))
{
echo "Select Image File: ";
}
else
{
$image = addslashes($_FILES['image']['tmp_name']);
$image_name = addslashes($_FILES['image']['imageNAME']);
$image_size = getimagesize($_FILES['image']['tmp_name']);
if($image_size==FALSE)
{
echo "thats not an image";
}
else
{
if(!$insert = mysql_query("INSERT INTO tblcinema VALUES ('', '', '', '', '', '', '', '', '', '', '$image', '$image_name', '')"))
{
echo "Upload Image Failed";
}
else
{
$lastid = mysql_insert_id();
echo "<img src=uploadimage.php?id=$lastid>";
}
}
}
将图像显示在表单页面代码中(也在不同的文件中):
include("databaseconnect.php");
$id = addslashes($_REQUEST['imageID']);
$image = mysql_query("SELECT * FROM tblcinema WHERE imageID = $id");
$image = mysql_fetch_assoc($image);
$image = $image['image'];
header('Content-type: image/jpeg');
echo $image;
在数据库表中,我已经使用了BLOB类型。
请尽快帮我解决这个问题!!!我非常感谢:)
答案 0 :(得分:0)
首先,您需要将上传的文件移动到特定文件夹 通过:
`move_uploaded_file(file,location);`
检查你在$ image中得到了什么它必须是图像文件的路径 您可以通过其路径获取图像:
<img style="min-height: 216; max-width: 140; max-height: 216px;" id="image" src="<?php echo $image; ?>" />
答案 1 :(得分:0)
您并未将实际图像(二进制数据)存储到数据库中,而是tmp_name
(字符串)。使用file_get_contents()
,如下所示:
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
答案 2 :(得分:0)
您没有将图像存储在任何地方
您需要将图像文件从临时文件夹移动到上传文件夹,并将路径存储到数据库中
答案 3 :(得分:0)
首先移动您上传的文件,然后按路径获取:
if(!isset($file))
{
echo "Select Image File: ";
}
else
{
$image = addslashes($_FILES['image']['tmp_name']);
$image_name = addslashes($_FILES['image']['imageNAME']);
$image_size = getimagesize($_FILES['image']['tmp_name']);
$uploaddir = "Directory where files can be store";
$upload_path = $uploaddir.'/'.$image_name;
move_uploaded_file($_FILES["image"]["tmp_name"],$upload_path));
//other codes goes here
}
to get the value of image :
<img style="min-height: 216; max-width: 140; max-height: 216px;" id="image" src="folder-path/<?php echo $image; ?>" />