看板 PHP 關於我們 聯絡資訊
※ 引述《taikobo (有比扯鈴扯嗎?)》之銘言: : ~Second.php~ : <?PHP : 《連接資料庫》 : $result = $link->query("SELECT p1 FROM t where s_num=$id"); : $row= $result->fetch_object(); : header(jpg); ^^^^^^^^^^^^ 這個地方可能有點問題,應該要符合 http header 的格式, 除非你之前有 define('jpg', 'Content-type: image/jpeg'); 否則應該是:header("Content-type: image/jpeg");
shadowjohn:你必需要把一整個檔案當作一個header後的jpeg或gif才行 05/24 15:10
shadowjohn:而且圖片外不可以有任何字,也不能有空白,要很乾淨 05/24 15:10
: echo $row->image; ^^^^^^^^^^^^^^^^^ 這部分應如 shadowjohn 所說的,除了圖片二元檔外, 不應參有其他東西; 假設在 header() 之前有任何程序產生錯誤碼、並 print out.. 那麼會造成圖片顯示上的一些錯誤,如:無法顯示圖片等 : ?> : ==大概是這個樣子== : 全域變數的問題是我耍笨了...把程式重新改寫 : 經過改寫無效,錯誤訊息也變了 : ==錯誤訊息== : Fatal error: Call to a member function query() on a non-object in C:\Program : Files\Apache Software Foundation\Apache2.2\htdocs\Second.php on : line 4 : ============ : $result = $link->query("SELECT p1 FROM t where s_num=$id");
alpe:現在是你 的$link 是物件嗎?? 05/24 15:28
alpe:php mysqli / mysql 05/24 15:29
如 alpe 所提示的,產生錯誤的可能是紅色的這段程式碼。 如果 $link 是 mysqli 所產生的資料庫連結(資源)物件、 或是其他提供 query() 方法的物件,才能這樣用。 依錯誤訊息,$link 應該不是個物件;請檢查一下資料庫的連結程式是否正確。 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.119.199.121
taikobo:很詳盡的解說,真的很感謝您熱心的幫忙...好感動^^ 05/24 16:11
※ 編輯: foxzgerald 來自: 140.119.199.121 (05/24 16:15)
shadowjohn:(心) 05/24 16:39
shadowjohn:我的相簿也都存db...show圖自動壓縮..上傳自動壓圖... 05/24 16:40
shadowjohn:配合GD後製圖片可以作很多事~像浮水印、加密、縮放圖 05/24 16:41
shadowjohn:不過我的欄位是用longtext,不是用blob,可以試看看 05/24 16:42
shadowjohn:MySQL的BLOB大小有64K, 純二元碼可以考慮用MEDIUMBLOB 05/24 16:43
shadowjohn:或 LONGBLOB ,我用longtext...因為我還轉成base64.. 05/24 16:44
foxzgerald:轉成字串的話. 要注意處理脫序字元的問題.. 05/24 16:47
foxzgerald:如果要轉成 base64 ..可參考我在 2982 所做的回應 :) 05/24 16:53
shadowjohn:其實可以直接用php 5.2以上版本跟mysql 5.0.26以上... 05/24 16:55
shadowjohn:好文! 05/24 16:57