본문으로 바로가기

 

스마트 에디터 2 (se2) 적용 시, 게시글에 삽입한 한글 이미지 파일명이 깨지는 문제 발생.

숫자로 이루어진 임의의 문자열로 변경 후 저장하도록 처리했다.

 

아래 두 가지 php 파일에서 이미지 파일명 처리를 수정하면 된다.

(버전 등의 이유로 경로가 다를 수 있음)

  • se2/sample/photo_uploader/file_uploader.php
  • se2/sample/photo_uploader/file_uploader_html5.php

 

file_uploader.php
$name = $_FILES['Filedata']['name'];

// 위 라인을 아래와 같이 수정
$arr = explode(".", rawurldecode($_FILES['Filedata']['name']));
$name = str_replace("\0", "", getRandNo().'.'.end($arr));

 

file_uploader_html5.php
$file->name = str_replace("\0", "", rawurldecode($headers['file_name']));

// 위 라인을 아래와 같이 수정
$arr = explode(".", rawurldecode($headers['file_name']));
$file->name = str_replace("\0", "", getRandNo().'.'.end($arr));

 

중복되지 않는 임의의 파일명을 생성하기 위해 getRandNo() 라는 함수를 만들었다.

 

function getRandNo() {
	$time = time();
    $suffix = rand(0, 999);
    $randNo = $time.sprintf("%03d", $suffix);
    
    return $randNo;
}

 

1642094300317.png 와 같은 형태로 파일명이 변경된다.