我閱讀了所有關於StackOverflow的可能的問題,我問了所有我知道但沒人能幫助我的人。 我有表數據庫:PHP顯示圖像爲BLOB mysqli
CREATE TABLE IF NOT EXISTS `zdjecia` (
`id` int(11) NOT NULL,
`imie_wlasciciela` varchar(50) NOT NULL,
`zdjecie` blob NOT NULL,
`nazwa` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=16
我爲不懂英語的變量抱歉,但我希望將所有源沒有改變。 imie_wlasciciela
和nazwa
在我的問題中並不重要。 所以zdjecie
是圖像的二進制數據 而id
是id。
我有一個文件,應該顯示圖像。
// single_image.php
<?php
if (isset($_GET['id']))
{
include('../connect.php'); // connect to database
$id = $_GET['id'];
$ret = $conn->query("SELECT * FROM zdjecia WHERE id=$id");
$row = $ret->fetch_assoc();
header("Content-type: image/png");
echo $row['zdjecie'];
// echo $row['nazwa']; // correct the result.
}
?>
在我的瀏覽器URL i貼.../single_image.php?ID = 8
我的問題是不顯示圖像,我在數據庫幾張圖片。我可以通過/ phpmyadmin在XAMPP下載它,它是正確的圖像,但我的頁面無法正確顯示, 每次看到一個破損的圖像圖標。
文件single_image.php設置爲無彈和Code-Page 1250(中歐)。
當我檢查結果$row['nazwa']
,並評論header("Content-type...")
行它顯示正確的varchar(50)
從數據庫。
我使用它就像寫了幾行字以上,或HTML,<img src="single_image.php?id=8"/>
工作,如果你正在使用urlrewrite有時你必須添加斜槓「/」到你的圖像源的HTML端。像 hakiko 2014-11-20 16:56:02
i dont understand your last sentence. there is no source code in page when there is only an image. – Jan3Sobieski 2014-11-20 17:01:30
If you change your file's extention to png you must change its image header info. I assumed, you only changed file name from xx.jpg to xx.png Sometimes this works but not completely. Still your file has .jpg info. So please give some more details about your images – hakiko 2014-11-20 17:06:04