2016-08-13 3 views
1

イメージをデータベースにアップロードしてWebページにイメージを表示するフォームを作成しようとしています。画像をアップロードすると、画像はデータベースに追加されますが、ウェブページには表示されません。画像アイコンのみが表示されます。エラーメッセージは表示されません。データベースからブラウザの画像を見る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コード:ここでuploadpage.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属性に等号が含まれているため、src属性を引用する必要があります。 – Progrock

答えて

0

イメージをファイルシステムに保存し、その代わりにデータベースのイメージにURLを保存しますか?私のPOV(バイナリデータをデータベースに保存することに精通していませんが)から、あなたがしていることは私にとっては混乱しているようです。ファイルシステムにアップロードしてデータベースに保存した後、画像の場所を保存することにします。

<img src="<?php echo $image['image_url'];?>">を使用してデータベースから引き出すことができます。

0

あなたは、あなたがデータベースから画像名を取得することができ、データベースに送信「アップロード」とイメージ名のようにフォルダを投影する、あなたのイメージをアップロードすることができますし、イメージ名でWebページへのパスを与えることができます

https://www.formget.com/upload-images-using-php-and-jquery-via-form/

を見ます
0

あなたのデータベースは画像をサポートしていないかもしれませんので、アップロードされた画像を/imagesのようなフォルダに保存し、それぞれの名前を176379.pngのような名前にしてデータベースにそのパスを保存することをお勧めします。表示する必要がある場合は、次のようなものを使用することができます。echo '<img src="{$image}"'>

関連する問題