집 >데이터 베이스 >MySQL 튜토리얼 >PHP에서 MySQL의 BLOB 이미지를 표시하는 방법: Base64 인코딩과 별도의 이미지 파일?
PHP에서 MySQL 데이터베이스의 BLOB 이미지를 표시하는 방법
PHP에서 MySQL 데이터베이스의 BLOB 이미지를 표시하려고 하는데 오류가 발생했습니다. . 문제를 해결하기 위한 두 가지 옵션을 살펴보겠습니다.
옵션 1: 인라인 Base64 인코딩
echo '<dt><strong>Technician Image:</strong></dt><dd>'; echo '<img src="data:image/jpeg;base64,' . base64_encode($row2['image']) . '" width="290" height="290">'; echo '</dd>';
이 방법은 BLOB 이미지를 base64 문자열로 인코딩하고 이를 직접 포함합니다. HTML에. 그러나 이미지 수가 많은 경우에는 이 접근 방식을 권장하지 않습니다.
옵션 2: 이미지 출력 PHP 파일
다음 코드를 사용하여 image.php 파일을 만듭니다.
<?php $id = (isset($_GET['id']) && is_numeric($_GET['id'])) ? intval($_GET['id']) : 0; $image = getImageFromDatabase($id); // Your function to fetch the image from the database header('Content-Type: image/jpeg'); echo $image; ?>
HTML:
<img src="image.php?id=<?php echo $image_id; ?>" />
이 메소드는 데이터베이스에서 이미지를 검색합니다. 올바른 MIME 유형(image/jpeg)이 설정되었는지 확인하면서 이를 브라우저로 직접 보냅니다. 헤더 라인:
header('Content-Type: image/jpeg');
은 출력을 이미지로 해석하고 그에 따라 표시하도록 브라우저에 지시합니다. 이렇게 하면 발생한 바이너리 JPEG 데이터 문제가 해결됩니다.
위 내용은 PHP에서 MySQL의 BLOB 이미지를 표시하는 방법: Base64 인코딩과 별도의 이미지 파일?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!