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내 문제가 표시되지 않는 이미지 나 데이터베이스가됩니다 이미지가 거의 없습니다. XAMPP에서/phpmyadmin으로 다운로드 할 수 있으며 올바른 이미지이지만 내 페이지가 올바르게 표시되지 않습니다. 깨진 이미지 아이콘이 나타날 때마다.
파일 single_image.php는 코드 없음 1250 (중앙 유럽어)으로 설정됩니다.
결과를 $row['nazwa']
(으)로 확인하고 header("Content-type...")
행을 주석 처리하면 데이터베이스에서 varchar(50)
이 올바르게 표시됩니다. 제가 위에서 쓴 몇 줄처럼 사용하거나 HTML에있어
,
을 위해 작동 할 헤더로
data:image/png;base64
을 추가 할 수 있습니다 html 쪽 이미지 소스에. hakikoi dont understand your last sentence. there is no source code in page when there is only an image. – Jan3Sobieski
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