테스트 사이트 - 개발 중인 베타 버전입니다

CKeditor에서 파일명이 동일한 파일을 업로드할때의 처리 관한 문제입니다. 채택완료

태그맨 11년 전 조회 7,392

바쁘신 시간에 정말 감사합니다.

현재 그누보드가 아닌, 일반 입력 폼에서 CKeditor 를 호출해보구 있습니다.. ( 즉 그누 전용함수를 사용할수 없다는 것입니다. )

지끔은 이미지가 업로드 잘 되는데, 

동일한 이름을 가진 파일을 업로드 할때 , "파일명+1" 설정이 먹히지 않습니다. (15 라인)

바쁘신 시간이겠지만, 좀 도와주시면 대단히 고맙겠습니다.

ㅋㅋ

 

</strong></p><p><span style="font-family: 돋움, dotum, helvetica; font-size: 12px; line-height: 21.6000003814697px; background-color: rgb(255, 255, 255);"></span><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;"><?php</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">
</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">$up_url = '/upload/images'; // 기본 업로드 URL</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">$up_dir = 'images'; // 기본 업로드 폴더</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;"> </span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">// 업로드 DIALOG 에서 전송된 값</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">$funcNum = $_GET['CKEditorFuncNum'] ;</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">$CKEditor = $_GET['CKEditor'] ;</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">$langCode = $_GET['langCode'] ;</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;"> </span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">if(isset($_FILES['upload']['tmp_name']))</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">{</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    $file_name = $_FILES['upload']['name'];</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    $ext = strtolower(substr($file_name, (strrpos($file_name, '.') + 1)));</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;"> </span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    if ('jpg' != $ext && 'jpeg' != $ext && 'gif' != $ext && 'png' != $ext)</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    {</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">        echo '이미지만 가능';</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">        return false;</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    }</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;"> </span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    $save_dir = sprintf('%s/%s', $up_dir, $file_name);</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    $save_url = sprintf('%s/%s', $up_url, $file_name);</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;"> </span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">    if (move_uploaded_file($_FILES["upload"]["tmp_name"],$save_dir))</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">        echo "<script>window.parent.CKEDITOR.tools.callFunction($funcNum, '$save_url', '업로드완료');</script>";</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">}</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">
</span></font></p><p><font face="돋움, dotum, helvetica"><span style="font-size: 12px; line-height: 21.6000003814697px;">?></span></font><strong style="font-family: 돋움, dotum, helvetica; font-size: 12px; line-height: 21.6000003814697px; background-color: rgb(255, 255, 255);">
</strong></p><p><strong style="font-family: 돋움, dotum, helvetica; font-size: 12px; line-height: 21.6000003814697px; background-color: rgb(255, 255, 255);">

 

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트

</p><p>//** 중복 파일 존재시 파일명뒤에 숫자 붙여서 구분</p><p>while(file_exists($realDir .DIRECTORY_SEPARATOR. $name))</p><p>{ ## 같은 이름의 파일이 존재할경우</p><p>    $a++; ## 1씩증가</p><p>    $ext = explode(".",$tempName); //** 점을 구분자로 파일이름과 확장자를 배열로 분리 시킨다</p><p>    $ext[0] = $ext[0].$a; //** 확장자를 뺀 파일 이름에다가 $a 값을 연결한다. test1 이 되겠죠</p><p>    $name = join(".",$ext); //** 위에서 배열로 분리시킬때 .(점) 이 빠졌으므로 다시 점을 추가하여 배열을 문자열로 합치는데 배열사이에 점을 추가 시킨다.</p><p>} </p><p>

 

참고해보세요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

태그맨
11년 전
위토즈님 감사합니다.

와우 ~~ 정말 멋있습니다...ㅎㅎ

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인