알지보드 컨버터 개발중인데 한글첨부파일 복사하는 방법 문제가 있습니다

알지보드 컨버터 개발중인데 한글첨부파일 복사하는 방법 문제가 있습니다

QA

알지보드 컨버터 개발중인데 한글첨부파일 복사하는 방법 문제가 있습니다

답변 4

본문

안녕하세요. 해피정 입니다.

최근 알지보드를 그누보드5로 데이타 변경프로그램을 개발중인데요.

게시글 복사하는 과정에서 한글 파일명이 복사가 안되는 현상으로 고민이 있어서 조언 구합니다.

 

서버에 업로드된 파일명은 이런형식입니다.

309$2$블로그조작 돈만주면 검색어순위 올린다.png

 

규칙을 살펴보면 아래와 같은데요

게시글번호$첨부파일번호$파일명

게시글번호 : 게시글이 등록된 고유번호 ... 그누보드의 wr_num

첨부파일번호 : 게시글에 3개까지 첨부파일 등록이 가능합니다.

                   제로보드4는 2개까지 가능했는데 알지보드는 3개 가능합니다.

                   게시글 저장하면서 첨부파일이름도 함께 저장합니다. 제로보드4와 유사

파일명 : 실제 서버에 업로드 된 파일명

 

cp 명령어로 파일을 복사할때 아래와 같이 에러가 뜹니다.

Warning: copy(/home/test/www/rgboard/data/faq/309$2$블로그조작 돈만주면 검색어순위 올린다.png) [function.copy]: failed to open stream: No such file or directory in /home/test/www/g5/convert/rgboard3_g5_board_update.php on line 345

 

345라인의 내용은 아래와 같구요

copy($src_file, $g5_file);

 

이것을 풀어쓰면 아래와 같습니다.

$src_file = "/home/test/www/rgboard/data/faq/309$2$블로그조작 돈만주면 검색어순위 올린다.png";
$g5_file = G5_DATA_PATH."/file/faq/309$2$블로그조작 돈만주면 검색어순위 올린다.png";

 

무엇을 수정하면 문제가 해결될 수 있을까요?

이 질문에 댓글 쓰기 :

답변 4

309$2$블로그조작 돈만주면 검색어순위 올린다.png

이걸

309\$2\$블로그조작 돈만주면 검색어순위 올린다.png

이렇게 해 보세요.

직접 해본게 아니기에 된다고 보장하지는 않지만 $가 변수명 앞에 쓰는지라 그거 때문에 문제가 되는것 같아요.

복사할때 저장되는 파일명을  309_2.png 로 변경해서 저장하도록 변경했습니다.
변경후 jpg 첨부파일은 정상 저장이 되는데,
그외 png, hwp 의 파일을 cp 에서 파일을 찾을수 없다고 여전히 오류가 발생하네요.

띄워쓰기도 문제가 되는 듯 합니다.

띄워쓰기를 없애거나 아래 같은 식으로 해야 복사가 될껍니다.


309\$2\$블로그조작_돈만주면_검색어순위_올린다.png

아래는 실행된 결과중 일부입니다.

Warning: copy(/home/test/www/rgboard/data/qa/2217$2$복용후기실수.hwp) [function.copy]: failed to open stream: No such file or directory in /home/test/www/g5/convert/rgboard3_g5_board_update.php on line 347

/home/test/www/rgboard/data/qa/2448$1$SSL17080.JPG -> /home/test/www/g5/data/file/qa/rgboard_2448_1.JPG

/home/test/www/rgboard/data/qa/2708$1$메일로 온 광고.png -> /home/test/www/g5/data/file/qa/rgboard_2708_1.png

첨부파일에는 hwp, jpg, png 등이 존재하고 있는데,

jpg  복사 성공
png  에러는 없지만 복사 실패
hwp  에러가 뜨면서 복사 실패

거참 안되려면 다 안되야 속이 편한데, jpg 확장자는 복사가 이상없이 되니 답답합니다.

urlencode()함수를 한번 사용해 보시죠.

https://blog.naver.com/chunsj78/50111791242
서버의 한글설정과 웹페이지의 한글설정이 달라서 발생한 문제로 확인되었습니다.
서버는 ISO-8859-1  ,  웹페이지는  utf-8  ....

혹시나 싶어서 hwp 첨부파일의 파일명을 변경해봤더니

2745$2$토종22.hwp  를  2745$2$tojong22.hwp  로

복사가 정상적으로 되었습니다.

 

파일명에 한글이 포함되면 복사가 안된다는 결론에 도달했는데.

이것이 서버의 설정 문제인건 아닌거 같고...

ssh 에서 cp 명령어를 직접 작동시켰을때 복사가 되었으니까요.

php 5.2 가 설치된 서버인데,  php 환경설정의 문제인걸까요?

 

 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 165
© SIRSOFT
현재 페이지 제일 처음으로