채택완료

이미지 업로드 관련 질문입니다ㅠ

2015-05-12 (화) 11:11:13 4,223

관리자 > 메뉴추가 탭에서 이미지 업로드를 구현 하려고 하는데요 

업로드가 안됩니다.

일단 소스를 안내해드리자면

Copy
//adm/menu_form.php입니다. <div id="menu_frm" class="new_win">    <h1><?php echo $g5['title']; ?></h1>     <form name="fmenuform" id="fmenuform" enctype="multipart/form-data" method="post">    //form 부분에 파일업로드를 위해 multipart/form-data를 추가 했습니다.<div class="new_win_desc">        <label for="me_type">대상선택</label>        <select name="me_type" id="me_type">            <option value="">직접입력</option>            <option value="group">게시판그룹</option>            <option value="board">게시판</option>            <option value="content">내용관리</option>        </select>    </div>     <div id="menu_result"></div>     </form> </div>
Copy
//adm/menu_form_search.php입니다.<tr>		<th scope="row">메뉴이미지</th>		<td>			<?php echo help("메뉴에 이미지를 추가할 수 있습니다.\n만약 이미지를 등록하지 않으신다면 해당메뉴의 제목으로 표시됩니다."); ?>			<input type="file" name="menu_img" />		</td>	</tr>

 위와 같이 파일 부분에 name값도 정확히 줬습니다.​

Copy
//adm/menu_list_update.php입니다.<?php$sub_menu = "100290";include_once('./_common.php'); check_demo(); if ($is_admin != 'super')    alert('최고관리자만 접근 가능합니다.'); check_token();  $uploaddir = G5_DATA_PATH.'/menu/'; $uploadfile = $uploaddir.basename($_FILES['menu_img']['name']);  echo '<pre>'; if($upload_max_filesize < $_FILES['menu_img']['size']){    echo "<script>alert(업로드 파일이 지정된 파일크기보다 큽니다.\n);</script>";  } else {  	if(($_FILES['menu_img']['error'] > 0) || ($_FILES['menu_img']['size'] <= 0)){ 		echo "<script>alert(파일 업로드에 실패하였습니다.);</script>"; 	} else { 		// HTTP post로 전송된 것인지 체크합니다. 		if(!is_uploaded_file($_FILES['menu_img']['tmp_name'])) { 			echo "<script>alert(HTTP로 전송된 파일이 아닙니다.);</script>"; 		} else { 		// move_uploaded_file은 임시 저장되어 있는 파일을 ./uploads 디렉토리로 이동합니다. 			if (move_uploaded_file($_FILES['menu_img']['tmp_name'], $uploadfile)) { 				 echo "<script>alert(성공적으로 업로드 되었습니다.\n);</script>"; 			} else { 				 echo "<script>alert(파일 업로드 실패입니다.\n);</script>"; 			} 		} 	} } // 이전 메뉴정보 삭제$sql = " delete from {$g5['menu_table']} ";sql_query($sql); $group_code = null;$primary_code = null;$count = count($_POST['code']); for ($i=0; $i<$count; $i++){    $_POST = array_map_deep('trim', $_POST);     $code    = $_POST['code'][$i];    $me_name = $_POST['me_name'][$i];    $me_link = $_POST['me_link'][$i];     if(!$code || !$me_name || !$me_link)        continue;     $sub_code = '';    if($group_code == $code) {        $sql = " select MAX(SUBSTRING(me_code,3,2)) as max_me_code                    from {$g5['menu_table']}                    where SUBSTRING(me_code,1,2) = '$primary_code' ";        $row = sql_fetch($sql);         $sub_code = base_convert($row['max_me_code'], 36, 10);        $sub_code += 36;        $sub_code = base_convert($sub_code, 10, 36);         $me_code = $primary_code.$sub_code;    } else {        $sql = " select MAX(SUBSTRING(me_code,1,2)) as max_me_code                    from {$g5['menu_table']}                    where LENGTH(me_code) = '2' ";        $row = sql_fetch($sql);         $me_code = base_convert($row['max_me_code'], 36, 10);        $me_code += 36;        $me_code = base_convert($me_code, 10, 36);        $group_code = $code;        $primary_code = $me_code;    }     // 메뉴 등록    $sql = " insert into {$g5['menu_table']}                set me_code         = '$me_code',                    me_name         = '$me_name',                    me_link         = '$me_link',                    me_target       = '{$_POST['me_target'][$i]}',                    me_order        = '{$_POST['me_order'][$i]}',                    me_use          = '{$_POST['me_use'][$i]}',                    me_mobile_use   = '{$_POST['me_mobile_use'][$i]}',					me_image		= '{$_FILES['menu_img']['name']}'";    sql_query($sql);}  goto_url('./menu_list.php');?>

맨 마지막 소스 부분에서 문제 인거 같은데 경로가 이상있나 싶어서 경로도 이래저래 다 바꿔 보았지만

안되네요..

고수님들 답변 부탁드리겠습니다 ㅠ

답변 1개 / 댓글 1개

채택된 답변
+20 포인트
2015-05-12 (화) 12:07:54

파일 이동시 에러 나는거 아닌가요?

답변에 대한 댓글 1개

아마 그 부분인거 같은데 어디서 에러나는지 찾을수 없네요 ㅠ

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