관리자 > 메뉴추가 탭에서 이미지 업로드를 구현 하려고 하는데요
업로드가 안됩니다.
일단 소스를 안내해드리자면
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개
답변을 작성하려면 로그인이 필요합니다.