2016-08-13 45 views
1

我试图创建一个表单,将图像上传到数据库并在网页上显示图像。当我上传图片时,图片会添加到数据库中,但不会显示在网页上。它只显示图像图标。我没有收到任何错误消息。这里是uploadpage.php代码:从数据库浏览器中查看图像PHP

$file = $_FILES['image']['tmp_name']; 

if(!isset($file)) 
    echo "That is not an image."; 
else 
{ 
    $image = mysql_real_escape_string(file_get_contents($_FILES["image"]["tmp_name"])); 
    $imageName = mysql_real_escape_string($_FILES["image"]["name"]); 
    $imageSize = @getimagesize($_FILES['image']['tmp_name']); 

    if ($imageSize==FALSE) 
     echo "That is not an image."; 
    else 
    { 
     if (!$insert = mysql_query("INSERT INTO storeImage VALUES('','$imageName','$image')")) 
      echo "Problem Uploading Image"; 
     else 
     { 
      $lastid = mysql_insert_id(); 
      echo "Image Uploaded.<p/>Your image:<p/><img src=get.php?id=$lastid>"; 
     }  
    } 
} 

而且get.php代码:

$id = mysql_real_escape_string($_REQUEST['id']); 

$image = mysql_query("SELECT * FROM 'storeImage' WHERE 'id'=$id"); 
$image = mysql_fetch_assoc($image); 
$image = $image['image']; 

header("Content-type: image/jpeg"); 

echo $image; 

非常感谢!

+0

之类的东西你应该在你的img元素中引用你的src属性,因为它包含一个等号。 – Progrock

回答

0

如何将图像存储在文件系统中并将url保存到数据库中的图像?因为,从我的POV(虽然我不熟悉将二进制数据保存到数据库),无论你做什么似乎都让我感到困惑。我宁愿将图像的位置保存到文件系统中,然后将其存储到数据库中。

然后,您可以使用<img src="<?php echo $image['image_url'];?>">从数据库中将其拉出。

0

您的数据库可能不支持图像,所以我建议您将上传的图像存储到像/images这样的文件夹中,并将每个图像命名为176379.png,然后将其路径存储在数据库中。然后,当你需要显示它时,你可以使用像echo '<img src="{$image}"'>

相关问题