개발 Q&A

제목 ajaxsubmit 통해서 파일 업로드 질문 있습니다.
글쓴이 sjalove 작성시각 2016/06/17 12:07:36
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 14264   RSS

 

<form id="form" name="form" onsubmit="return form_submit(this);" method="POST" enctype="multipart/form-data"> 
<input type="file" name="upload" id="upload"> 
</form>
 
 
<script language="javascript" src= <?php G5_URL ?>"/js/jquery.form.min.js"></script> 
<script>
$('#upload').on('change', function(){
		var data = new FormData();
		var exec_url = './ajax_process.php';
		var options = {
			url:exec_url,
			type:'POST',
			dataType:'json',
			success : function(r) {
				if(r.success) {
 
				}
				else {
					alert(r.msg);
				}
			}
		}
		$('#form').ajaxSubmit(options);
	});
</script>
 
 
====ajax_process.php====
<?php
include "./_common.php"; 
print_r2($_FILES); // 정상적으로 출력이 됩니다.,
 
var_dump(is_uploaded_file($_FILES['upload']['name'])); // 문제는 여기 인데요. 이렇게 하면 "false"로 출력되네요 ㅠ,ㅠ
 
$mb_id = "test";
$mb_dir = G5_URL.'/test'; 
$dest_path = $mb_dir.'/'.$mb_id.'.gif'; 
move_uploaded_file($_FILES['upload']['name'], $dest_path); // 해당 경로에 파일 업로드도 안되네요 ㅠ,ㅠ 도대체 무엇이 문제일까요?? 
?>

 

 

 

<input type="file" name="upload" id="upload">  <-- 여기 버튼을 클릭하게 되면

 

jquery change 이벤트 통해 자동 파일 업로드가 되는 과정입니다..

 다음글 이메일 해킹?! 도용?! 고수님의 손길이 필요합니다. ... (3)
 이전글 sns 연동(페이스북 질문요) (2)

댓글

kaido / 2016/06/17 12:19:59 / 추천 0
ajax 없이 그냥 submit 때려도 그런가요?
sjalove / 2016/06/17 12:23:55 / 추천 0
아직 안해봤는데요
밥먹고 돌아가서 한번 테스트 해보겠습니다
sjalove / 2016/06/17 12:59:29 / 추천 0
kaido > 그냥 submit로 때려도 이렇게 나옵니다 ㅠ,ㅠ
kaido / 2016/06/17 13:40:26 / 추천 0

뭔가 이상해서 is_uploaded_file() 찾아보니 잘못 사용되신듯 합니다

http://php.net/manual/kr/function.is-uploaded-file.php

 

그리고 해당 파일업로드 하는 폴더에 권한도 체크해 보세요.

 

ajax upload는 일반 submit 업로드가 가능하면 로직에서는 따로 바꿔주는것 없이 잘 됩니다.