묻고답하기

제가 제로보드 보면서 전에 제가 만들던 자료실게시판을 수정했습니다.

일반 글쓰기는 이상없이 저장이 됩니다  그런데 파일을 지정한후 저장하기를 하면 에러가 발생합니다.

아래소스는 제가 작성한 write_proc.php 라는 파일의 소스그대로 복사해서 붙였습니다.

정확히 에러가 나는  부분은  //중복파일이 있을때 부분의 if(!move_uploaded_file($userfile,$dest)) ErrMsg
부분입니다. 혼자 해결해 볼려고 애를 쓰지만 정말 해결이 안돼서 그럽니다. 제발 도와주십시오..

<?
         include "dbcon.php";

//사용자가 아무값도 입력하지 않았거나 입력한 값이 허용되지 않는 값일 경우 에러메시지를 출력하고 스크립트를 종료한다.
if(!ereg("([^[:space:]]+)", $name)) {
   ErrMsg("입력하신 이름은 허용되지 않는 값입니다.\n\n다시 입력하여 주십시오");
   exit;
}

if(!ereg("([^[:space:]]+)", $subject)) {
   ErrMsg("제목을 입력하여주십시오");
   exit;
}

if(!ereg("(^[0-9a-zA-Z]{4,}$)", $passwd)) {
   ErrMsg("암호는 최소 4자이상의 영문자 또는 숫자여야 합니다.\n\n다시입력하여 주십시오.");
   exit;
}

if(!ereg("([^[:space:]]+)", $comment)) {
   ErrMsg("본문을 입력하지 않으셨습니다.\n\n다시 입력하여 주십시오.");
   exit;
}

//등록한 파일이 업로드가 허용되지 않는 확장자를 갖는 파일인지를 검사한다.
$filename = explode(".", $userfile_name);
$extension = $filename[sizeof($filename)-1];

if(in_array($extension,$prohibited_ext)) {
   ErrMsg("해당파일은 자료실 운영지침에 따라 업로드가 허용되지 않는 파일입니다.\n\n가능하면 압축파일의 형태로 등록하여 주십시오.");
   exit;
}

//등록하려는 파일과 동일한 이름을 갖는 파일이 이미 존재하는지를 검사한다.
$dest = "/upfile/" . $b_name . "/" . $userfile_name;

if($userfile_size>0&&$userfile){

        // 디렉토리를 검사함
        if(!is_dir("upfile/" . $b_name)) {
                mkdir("upfile/" . $b_name,0777);
                @chmod("upfile/" . $b_name,0706);

        }

        /*if(file_exists($dest)) {
           ErrMsg("동일한 이름의 파일이 이미 등록되어 있습니다.\n\n다른 이름으로 업로드하여 주십시오.");
           exit;
        }*/

//----------------------
                        // 중복파일이 있을때;;
        if(file_exists($dest)) {
                if(!move_uploaded_file($userfile,$dest)) ErrMsg("파일업로드가 제대로 되지 않았습니다1  \n\n $userfile:::::$dest");
                        //$file_name1="data/$id/".$reg_date."/".$s_file_name1;
                        @chmod($dest,0706);
                        @chmod("upfile/" . $b_name,0707);
        } else {
                if(!move_uploaded_file($userfile,$dest)) ErrMsg("파일업로드가 제대로 되지 않았습니다2  \n\n $userfile:::::$dest");
                        //$file_name1="data/$id/".$s_file_name1;  
                        @chmod($dest,0706);
        }


        // 작업이 끝난후 임시디렉토리에 저장된 파일을 삭제한다.
        if(!@unlink($userfile)) {
           ErrMsg("업로드 과정중 오류가 발생하였습니다. \n\n관리자에게 문의하여 주십시오.");
           exit;
        }
}

$result = mysql_query("SELECT max(uid), max(fid) FROM $code WHERE b_name='$b_name'");
if (!$result) {
   ErrMsg("QUERY_ERROR");
   exit;
}

$row = mysql_fetch_row($result);
if($row[0]) {
   $new_uid = $row[0] + 1;
} else {
   $new_uid = 1;
}
if($row[1]) {
   $new_fid = $row[1] + 1;
} else {
   $new_fid = 1;
}  

mysql_free_result($result);

//파일이 등록된 시간을 저장한다.
$signdate = time();

//제목과 내용에 포함된 특수문자를 escape시킨다.
$subject = addslashes($subject);
$comment = addslashes($comment);

// 데이터베이스에 입력값을 삽입한다.
$query = "INSERT INTO $code (fid, b_name, userid, name, email, subject, comment, passwd, signdate, ref, userfile, filesize, thread) VALUES ($new_fid, '$b_name', '$userid', '$name', '$email', '$subject', '$comment', $passwd, $signdate, 1,'$userfile_name','$userfile_size', 'A')";
$result = mysql_query($query);
if($result) {

   // 리스트 출력화면으로 이동한다.
   echo ("<meta http-equiv='Refresh' content='0; URL=list.php?code=$code&b_name=$b_name'>");
} else {

   // 에러가 발생하였으므로 이미 업로드된 파일을 삭제한다.
   @unlink($dest);

   ErrMsg("QUERY_ERROR2");
   exit;
}
?>
글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
김상돈 마우스오른쪽 클릭금지... [1] 2007.08.10
김선종 섬네일 생성시... 문제... [2] 2007.08.10
플로렐라 MySQL에서... [2] 2007.08.10
hanpedro [도움바람] 변수를 받지 못합니다. ㅋ - 소스첨부  
손명수 외부로그인이요... [1] 2007.08.10
히스 아래 소스좀 해석해주세요..-_-;; [1] 2007.08.10
손명수 외부 로그인 설정하는거요~~~ [2] 2007.08.10
[유아독존] htaccess 질문 하나만 받아주세요. [1] 2007.08.10
ufo220 바디에 온로드 삽입하려면? [1] 2007.08.10
이정주 APM(?)을 이용한 웹 상이 아닌 일반하드에서 제로보드 이용하기에 대해 [1] 2007.08.10
이경원 새로운창을 열어도 기존에 열었던 창에서 음악 안꺼지기?!  
강형민 [Linux] 서버에 관련된 질문입니다. [1] 2007.08.10
김걸 스크롤바 따라다니는 메뉴가 ... [5] 2007.08.10
김동철 내용좀.. 보고..;;;; [2] 2007.08.10
두개 도메인 한계정 드렉토리별 이동 방법 [1] 2007.08.10
히스 mysql_fetch_array와 mysql_fetch_row의 차이점좀..; [4] 2007.08.10
이재호 원프레임 홈페이지 만들기에 대해서 궁금합니다. [2] 2007.08.10
이현기 게시판 만들때요 답글 처리를 어떻게 해야되나요? [2] 2007.08.10
:D내나이54 사랑비 BGM 를 홈페이지에 달았는데.. 노래제목부분이 한쪽으로 내려갔어요;ㅂ; [1] 2007.08.10
송영진 Mysql 이전 및 복구에 대해 질문드립니다. [2] 2007.08.10
정용우 일러스트 그림이 자꾸 번져보여요.. [1] 2007.08.10
기억속에 쇼핑몰 구축에 대한 도움을 좀 구합니다... [1] 2007.08.10
이동신 자동계산스크립트 [4] 2007.08.10
백도 닫기. 그것은 인생 그것은 외로움..>0< [5] 2007.08.10
taeho 링크를 누를면 메뉴가 뜨는 자바스크립트 좀  
전재근 변수 주고 받기에 대한 질문입니다. [3] 2007.08.10
daniel cafe24계정에서 PHP를 이용 도메인 2개 사용하기 [1] 2007.08.10
이태운 홈페이지 새창 관련  
자스민 나모에서 질문입니다..  
:D내나이54 그림과 그림 사이가 자꾸 벌어져요;ㅂ;