이미지 저장 및 파일저장 폴더분리 문의
본문
이미지 저장 및 파일저장 폴더분리 를하고싶습니다
지금은 data/file 에 전부 저장되는걸로알고있는데
파일은 data/file 이미지는 data/img 이런식으로 두개를 나누고싶은데
어떻게 처리를 해야될지 도저히 못하고있는데 도움좀부탁드리겠습니다.
답변 1
bbs/write_update.php 파일에서
for ($i=0; $i<count($_FILES['bf_file']['name']); $i++) {
}
이부분에 해당되는 부분에서 처리를 하셔야 합니다
for구문추가전에 폴더를 생성하셔야 합니다
for구문위
// 디렉토리가 없다면 생성합니다. (퍼미션도 변경하구요.)
@mkdir(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH.'/file/'.$bo_table, G5_DIR_PERMISSION);
이 부분에
@mkdir(G5_DATA_PATH.'/img/'.$bo_table, G5_DIR_PERMISSION);
@chmod(G5_DATA_PATH.'/img/'.$bo_table, G5_DIR_PERMISSION);
추가합니다
해당 for구문 안에서 다음의 구문을 통해 파일의 폴더를 결정해 줍니다
if(preg_match("/\.({$config['cf_image_extension']})$/i", $row['bf_file'])) {
$file_folder = "img";
} else {
$file_folder = "file";
}
대충 요런식으로 확장자가 관리자>환경설정에서 넣어준 이미지의 확장자라면 폴더이름을 img로 그렇지 않다면 file로 정합니다
이렇게 변경이 되었다면 아래쪽에서
G5_DATA_PATH.'/file/'.$bo_table'/'.~~~~~~~ 이런식으로 되어있는 부분들을
G5_DATA_PATH.'/'.$file_folder.'/'.$bo_table'/'.~~~~~~~ 이렇게 변경해주시면 파일들이 두 폴더로 업로드가 될 것입니다.
파일업로드가 변경된게 끝이 아닙니다
불러오는 파일 썸네일 부분도 모두 변경하셔야 합니다
/bbs/common.lib.php 파일에서 get_file()함수도 G5_DATA_PATH.'/file/'.$bo_table 부부분을 위처럼 수정
/bbs/thumbnail.lib.php 파일에서도 G5_DATA_PATH.'/file/'.$bo_table 부분을 수정하셔야 합니다
이미지에 관련된 파일이 또 있다면 그부분도 수정해 주셔야 겠지요