PHP 코드를 사용하여 MySQL 데이터베이스에 이미지 업로드
이 프로그래밍 질문에서 사용자는 다음을 사용하여 HTML 형식의 이미지를 MySQL 데이터베이스에 업로드하려고 시도하는 동안 문제에 직면합니다. PHP 코드. 오류 메시지가 없음에도 불구하고 시스템이 데이터베이스에 이미지 데이터를 삽입하지 못했습니다.
이미지 업로드 프로세스
사용자가 이미지 업로드를 처리하는 코드 조각을 제공했습니다. 코드 분석 결과 다음과 같은 문제가 확인되었습니다.
-
이미지 열 정의 부족: 사용자가 MySQL 테이블의 이미지 열이 BLOB으로 정의되는지 여부를 지정하지 않습니다. 바이너리 데이터를 저장하는 데 필수적인 유형입니다. 이 정의가 없으면 코드가 데이터베이스에 이미지를 성공적으로 삽입할 수 없습니다.
-
mysql 함수 지원 중단: 코드는 mysql_query와 같이 더 이상 사용되지 않는 mysql 함수를 사용합니다. 보안 및 성능 향상을 위해 대신 PDO 또는 MySQLi를 사용하는 것이 좋습니다.
-
부적절한 SQL 구문: SQL 삽입 문에 잘못된 구문, 특히 이미지 변수 주위에 누락된 작은따옴표가 포함되어 있습니다. 올바른 구문은 다음과 같습니다: INSERT INTO product_images (id, image, image_name) VALUES (1, '$image', '$image_name').
권장 접근 방식
적절한 경우 이미지를 업로드하려면 다음 지침을 준수해야 합니다.
- MySQL 테이블의 이미지 열을 BLOB로 저장합니다.
- PDO 또는 MySQLi를 사용하여 SQL 쿼리를 실행합니다.
- SQL 주입을 방지하려면 mysql_real_escape_string()을 사용하여 이미지 데이터를 이스케이프합니다.
- 활용 다음과 같은 적절한 속성을 가진 표준화된 HTML 형식 enctype="multipart/form-data".
이러한 수정 사항을 구현하면 사용자는 PHP 코드를 사용하여 MySQL 데이터베이스에 이미지를 성공적으로 업로드할 수 있습니다.
위 내용은 PHP를 사용하여 내 이미지가 내 MySQL 데이터베이스에 업로드되지 않는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!