알지보드 컨버터 개발중인데 한글첨부파일 복사하는 방법 문제가 있습니다
본문
안녕하세요. 해피정 입니다.
최근 알지보드를 그누보드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
urlencode()함수를 한번 사용해 보시죠.
혹시나 싶어서 hwp 첨부파일의 파일명을 변경해봤더니
2745$2$토종22.hwp 를 2745$2$tojong22.hwp 로
복사가 정상적으로 되었습니다.
파일명에 한글이 포함되면 복사가 안된다는 결론에 도달했는데.
이것이 서버의 설정 문제인건 아닌거 같고...
ssh 에서 cp 명령어를 직접 작동시켰을때 복사가 되었으니까요.
php 5.2 가 설치된 서버인데, php 환경설정의 문제인걸까요?