doune1000 2012-01-05 17:25
浏览 98
已采纳

PHP显示来自数据库的图像(中等blob)

I currently have a database where i can store images in.. But the PHP page i created to display them... doesnt work. But when i use the link as scr for a < img> it shows a empty image frame. if i echo the image directly, i get a lot of strange signs

the way i want to display the images is: < img src="image.php?image="'.$imageID.'/>

the code i use for displaying the image(image.php) is:

 <?php session_start();
 if(!isset($_GET['image']))
 {
     header("HTTP/1.0 404 Not Found");
 }
 else{
     $link = mysql_connect('localhost', '45345345435435345', 'wewfsersdfds');
            if (!$link) {
                echo "error";
                die;
            }

            $db_selected = mysql_select_db(Tha base, $link);
            if (!$db_selected) {
                echo "error";
                die;
            }
 $nummer=(int)trim(stripslashes($_GET['image']));
 $mynr=$nummer;
 $sql="SELECT * FROM Foto WHERE fotonr=$mynr";
 $result=mysql_query($sql);
 if(!$result)
 {
     echo "error".mysql_error();
     header("HTTP/1.0 404 Not Found");
 }
 else
 {

     $foto = mysql_fetch_assoc($result);

     header("Content-type: ".$foto['type']);
     echo $foto['image'];


 }
 }
 ?>

I tried a lot already but it wont work :( i updated the code to the newest version. Made mistakes with the sql(selected nothing/never do mysql_real_escape_string of a int)

Now it shows a straight line of characters, instead of an image, thats at least a improvement...

Can someone help me?

Thanx for your time!

  • 写回答

3条回答 默认 最新

  • dongtan8979 2012-01-06 03:07
    关注

    Honestly, I know it can be tricky. I think it has to do with how your storing it, not how your outputting it. I have one example of storage from a recent project I can show.

    $fp = fopen($image_path, 'r');
    $image = fread($fp, filesize($image_path));
    $image = addslashes($image);
    fclose($fp);
    
    // save $image into DB.
    

    Not sure if you do similar with file_get_contents. How I output is similar to how you are doing it, only I use a ORM and a framework.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?