>백엔드 개발 >PHP 튜토리얼 >PHP를 사용하여 MySQL 데이터베이스에서 이미지를 저장하고 검색하는 방법은 무엇입니까?

PHP를 사용하여 MySQL 데이터베이스에서 이미지를 저장하고 검색하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-24 07:04:17974검색

How to Store and Retrieve Images from a MySQL Database Using PHP?

PHP를 사용하여 MySQL 데이터베이스에서 이미지 저장 및 검색

MySQL 데이터베이스에 이미지를 저장하고 PHP를 사용하여 이미지를 검색하려면 몇 가지 단계를 수행해야 합니다.

MySQL 생성 테이블:
이미지 데이터를 저장하기 위해 MySQL에 테이블을 만드는 것부터 시작합니다. "testblob"이라는 적절한 테이블 구조의 예는 다음과 같습니다.

create table testblob (
    image_id        tinyint(3)  not null default '0',
    image_type      varchar(25) not null default '',
    image           blob        not null,
    image_size      varchar(25) not null default '',
    image_ctgy      varchar(25) not null default '',
    image_name      varchar(50) not null default ''
);

이미지 삽입:
데이터베이스에 이미지를 삽입하려면 이미지 데이터를 가져와서 PHP의 파일 유틸리티를 사용하여 크기를 측정합니다. MySQL 데이터베이스에 연결하고 다음과 유사한 SQL 쿼리를 실행하여 SQL 주입을 방지하기 위해 이미지 데이터가 이스케이프되는지 확인합니다.

$imgData = file_get_contents($filename);
$size = getimagesize($filename);
$sql = sprintf("INSERT INTO testblob
    (image_type, image, image_size, image_name)
    VALUES
    ('%s', '%s', '%d', '%s')",
    mysql_real_escape_string($size['mime']),
    mysql_real_escape_string($imgData),
    $size[3],
    mysql_real_escape_string($_FILES['userfile']['name'])
    );
mysql_query($sql);

이미지 검색:
To 데이터베이스의 이미지를 웹 페이지에 표시하고 데이터베이스에 연결한 후 쿼리를 실행하여 이미지 데이터를 검색합니다. 적절한 콘텐츠 유형 헤더를 설정하고 PHP의 echo 명령을 사용하여 이미지를 표시합니다.

$sql = "SELECT image FROM testblob WHERE image_id=0";
$result = mysql_query("$sql");
header("Content-type: image/jpeg");
echo mysql_result($result, 0);

위 내용은 PHP를 사용하여 MySQL 데이터베이스에서 이미지를 저장하고 검색하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.