묻고답하기

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

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

아래소스는 제가 작성한 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 남기남
taeho 링크를 누를면 메뉴가 뜨는 자바스크립트 좀  
전재근 변수 주고 받기에 대한 질문입니다. [3] 2007.08.10
daniel cafe24계정에서 PHP를 이용 도메인 2개 사용하기 [1] 2007.08.10
이태운 홈페이지 새창 관련  
자스민 나모에서 질문입니다..  
:D내나이54 그림과 그림 사이가 자꾸 벌어져요;ㅂ;  
히스 프로그래밍 해석하는데 문제가.. [5] 2007.08.10
양정모 소스좀 봐주세용...(머리터지겠슴다)-펼침메뉴...  
ji 웹 프로그래밍 서적 추천 받고 싶습니다..^^  
유상종 php 자료실 질문좀 할께요 [1] 2007.08.10
손명수 질문하나더요! 주메뉴하고 부메뉴;;;; [1] 2007.08.10
손명수 헤더파일과 푸터파일을 만들어서 인클루드해서 쓸수도 있다?? [1] 2007.08.10
basecom 다른 프레임의 배경색을 바꿀 수 있나요?  
Danggn™ 보기>소스보기 기능을 하지 못하도록 하고 싶습니다.. [2] 2007.08.10
Noziro.H 무단링크 방지에 대해..  
임소식 음.. 도움을 받았지만 전혀 모르겠음.. [2] 2007.08.10
히스 인클루드(include)는 한페이지에 몇번이나 들어갈수 있나요? [2] 2007.08.10
손명수 노프레임으로 홈페이지를 만드는데요... [5] 2007.08.10
김준모 화면 크기 고정이랑, 링크요.. [2] 2007.08.10
이산원 도와 주셨으면 합니다.  
basecom 이미지에 걸린 링크에는 텍스트에 걸린 링크와 다른 효과주기..?? [2] 2007.08.10
오리한마리 홈페이지 만들때 필요한 것들이 무엇인지 알고 싶어요 [1] 2007.08.10
임소식 value 때문에 고생.. [2] 2007.08.10
강영미 제로보드를 이용하여 온라인문의폼이 가능한가요? [1] 2007.08.10
원매니아 Gradient 때문에 미치겠습니다 (사진있음) [4] 2007.08.10
한대희 웹게임을 운영하려고 합니다... [2] 2007.08.10
양이 도와주세요//  
basecom 주소창의 주소고정? [1] 2007.08.10
스푸키 [서브도메인] 골뱅이 도메인에 대해 [2] 2007.08.10
김상돈 사랑비 질문입니다. [2] 2007.08.10