2013-04-20 36 views
0
   <?php 
       ob_start(); 
       session_start(); 
       require_once('name.php'); 
        if(!isset($_GET['e'])) 
        { 
        header('HTTP/1.1 204 No Content'); 
        exit(); 
        } 
        if(empty($_SESSION['id'])) 
        { 
        header('Location: login.php'); 
         exit(); 
        } 
        $id=$_GET['e']; 

        //database login information removed 

        $statement2=$db->prepare('select * from event2 where id=:id and userid=:uid'); 
        $statement2->execute(array('id' => $id, 
           'uid' => $_SESSION['id'])); 
        if($statement2->rowCount()==0) 
        { 
       header('HTTP/1.1 204 No Content'); 
       exit(); 
        } 
        $row=$statement2->fetch(); 
        $image=$row['image']; 
        $realimage=imagecreatefromstring($image); 


       header('Content-type: image/jpeg'); 
       $realimage; 
       ob_end_flush(); 
       ?> 

我收到「圖片」圖片鏈接「無法顯示,因爲它包含錯誤」。我已經嘗試將內容標題位置更改爲各個地方,並且無法使其正常工作。我已經從數據庫直接下載了圖像,並且它能夠正確複製。當用鉻合金打開頁面時,我會看到一張很小的綠色圖片。無法顯示圖片「[blah]」,因爲它包含錯誤

+0

嘗試刪除最後一個'?>'?也許你的文件最後包含空格。 – 2013-04-20 21:26:00

+0

@EduardLuca感謝您的輸入,但沒有骰子:( – user2302779 2013-04-20 21:46:22

回答

1

輸出圖像怎麼樣?

imagejpeg($realimage); 

你缺少$realimage;之前imagejpeg。 (imagejpeg或其他適當的圖像*函數輸出。)


順便說一句,你爲什麼不直接輸出$image(通過echo)而不是首先解析圖像數據的圖像?

+2

鑑於它上面的'header'給出了'image/jpeg',可能'imagejpeg'會是一個更好的建議,雖然:) – Ryan 2013-04-20 18:30:46

+0

@minitech良好的捕獲,修復。 – bwoebi 2013-04-20 18:31:50

+0

我試過imagejpeg($ realimage)和echo($ image),但都沒有成功。我不直接輸出的原因是因爲它被保存爲數據庫中的文本(項目需求),所以函數imagecreatefromstring需要這樣做,對吧? – user2302779 2013-04-20 21:05:30

1

您在<?php開始標記之前有空格。刪除它們。

+2

確定在將代碼放入此處後不會生成空格嗎? – bwoebi 2013-04-20 18:28:11

+0

@bwoebi:我不知道,問OP。 ;) – 2013-04-20 18:33:52

+0

他們是,這是我第一次把代碼放在堆棧溢出上,我試圖讓我的代碼符合網站的問題創建嚮導。最終,我在記事本++中敲擊了一大堆標籤,並在一天內調用它。 – user2302779 2013-04-20 21:07:25

相關問題