| 제목 | CI 파일업로드 질문입니다 | ||
|---|---|---|---|
| 카테고리 | CI 4 관련 | ||
| 글쓴이 | 보라색맛났어 | 작성시각 | 2021/01/05 15:54:12 | 
|  | |||
| ajax로 다중파일 업로드를 하려고 하고 있습니다 
 데이터 받는 곳에서 $_FILES를 찍어보면 데이터가 나오는데 CI 업로드 처리 부분에서 var_dump를 찍어보니까 $_FILES 내용 array(1) { ["file"]=> array(5) { ["name"]=> array(1) { [0]=> string(64) "fa5cf2042e329f8d63c1d3f8039fa59dcd4c93f222786e9312aa7adcfd38.jpg" } ["type"]=> array(1) { [0]=> string(10) "image/jpeg" } ["tmp_name"]=> array(1) { [0]=> string(14) "/tmp/phpsmqPVp" } ["error"]=> array(1) { [0]=> int(0) } ["size"]=> array(1) { [0]=> int(56171) } } } 
 var_dump 내용 array(1) { ["file"]=> string(52) "업로드할 파일을 선택하지 않았습니다." } ++1++ 
 같이 에러문구가 뜹니다 
 어떤게 문제인걸까요? 
 
$arrUploadfile = array();
		$errCount = 0;
		$arrErrors = array();
		foreach ( $_FILES as $key => $uploadfile  ) {		    
			
			if ($this->upload->do_upload($key)){
				$arrUploadfile[$key] = $this->upload->data();
			}else{
				$error = ( ! isset($_FILES[$key]['error'])) ? 4 : $_FILES[$key]['error'];
				echo var_dump($error);
				
				if ($error != 4){
					$arrErrors[$key] = $this->upload->display_errors('','');
					$errCount++;
				}
			}
			
			var_dump($arrErrors);
			echo "++".$errCount."++";
			
		}
=================================================
/* 스크립트 */
function doFileUpload(){
    	var formData = new FormData($('#fileForm')[0]); 
    				
    	
    	$.ajax({ type: "POST",
    			 enctype: "multipart/form-data",
    			 url: "/saveImage?m=<?=$menuid?>",
    			 data: formData, // 필수 
    			 processData: false, // 필수 
    			 contentType: false, // 필수 
    			 cache: false, 
    			 success: function (result) { 
    			 	//window.self.close();
    			 	//location.reload();
    			 }, error: function (e) { } });
	
	}
 | |||
| 다음글 | 간단한 웹페이지를 만들어볼려고 닷홈으로 호스팅해서 시작... (3) | ||
| 이전글 | 3.x에서 namspace를 사용하는 controlle... (3) | ||
| 
                                변종원(웅파)
                                /
                                2021/01/05 16:08:19 /
                                추천
                                0
                             | 
| 
                                보라색맛났어
                                /
                                2021/01/05 16:14:14 /
                                추천
                                0
                             
                                변종원(웅파)  array(1) { [0]=> int(0) } 같이 찍히네요..; 
                             | 
| 
                                PureAni
                                /
                                2021/01/05 17:05:17 /
                                추천
                                0
                             
                                CI 라이브러리 안쓰고, 순수 PHP 로 코딩하면 파일이 정상적으로 업로드되나요?
                             | 
$key 를 출력해보세요. 어떤게 나오는지..
$this->upload->do_upload($key) 부분 매뉴얼에 따르면 아래와 같습니다.
기본설정은 파일이 userfile라는 폼필드로부터 업로드 될 것이라고 기대합니다. 또한 폼은 multipart 타입이라야 합니다.
필드명을 여러분이 저장하고 싶다면 do_upload() 함수에 아래와 같이 그 이름을 파라미터로 넘겨주시면 됩니다: