Copy
<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====<?phpinclude "./_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 이벤트 통해 자동 파일 업로드가 되는 과정입니다..
답변 1개
채택된 답변
+20 포인트
2016-06-17 (금) 13:02:38
Copy
$upload = ''; foreach( $_FILES as $tkey => $tval ) { if( $_FILES[$tkey]['size'] < 10000000 ){ if( $_FILES[$tkey]['name'] ){ //$Fsize = $_FILES[$tkey]['size']; $uploaddir = 'inc/upload2/'; //상점사진 저장경로 $Finfo = pathinfo($_FILES[$tkey]['name']); $Fname = time()."_".$shopname.".".strtolower($Finfo['extension']); $Tname = $uploaddir.$Fname; if( $_FILES[$tkey]['name'] && move_uploaded_file($_FILES[$tkey]['tmp_name'], $Tname) ) { $upload = $Fname; } else { $upload = ''; echo "<script>alert('파일 업로드에 실패 하였습니다.');</script>"; exit; } } }else{ $upload = ''; echo "<script>alert('업로드 용량을 초과하였습니다.');</script>"; exit; } }
제가 썻던건데 수정해서 사용해보세여
답변을 작성하려면 로그인이 필요합니다.