| 제목 | upload library 사용 파일 업로드시 max_size 에러 메세지문제 | ||
|---|---|---|---|
| 글쓴이 | 박기천 | 작성시각 | 2014/02/27 17:27:06 | 
|  | |||
| upload library 사용 첨부파일을 업로드하고 있습니다 문제는 php.ini에 설정된 용량보다 큰것을 올리게 되면 $this->set_error('upload_no_file_selected')로 에러가 발생합니다 메세지는 You did not select a file to upload로 출력됩니다 만일 max_size에 1M를 설정하고 php.ini에 5M 가 설정 되어있다고 가정할 때 3M를 올리면 The file you are attempting to upload is larger than the permitted size.로 정상 출력되는데 6M를 올리게되면 You did not select a file to upload가 출력되고 있습니다 어디에 문제가 있으며 무엇을 수정해야 할까요? | |||
| 다음글 | 리눅스 apm 최신버전 바꾸려고하는데요? (1) | ||
| 이전글 | 부모창이 닫히면 자식창도 저절로 닫히게 하는 방법은 없... (3) | ||
| 
                                변종원(웅파)
                                /
                                2014/02/27 19:13:57 /
                                추천
                                0
                             | 
| 
                                박기천
                                /
                                2014/02/28 11:18:09 /
                                추천
                                0
                             
                                웅파님  public function do_upload($field = 'userfile')  {  // Is $_FILES[$field] set? If not, no reason to continue.   if ( ! isset($_FILES[$field]))   {    $this->set_error('upload_no_file_selected');    return FALSE;   } $lang['upload_no_file_selected'] = "You did not select a file to upload."; 위에서 에러가 걸리는것같은데 실제 첨부 안한것과 php.ini의 요량을 초과한는것을 구분하여 분기를 어떻게 해야 할까요? | 
| 
                                한대승(불의회상)
                                /
                                2014/02/28 11:39:16 /
                                추천
                                0
                             
                                박기천// $this->upload->display_errors() 함수로 확인하여 처리 하세요. http://cikorea.net/user_guide_2.1.0/libraries/file_uploading.html | 
| 
                                박기천
                                /
                                2014/02/28 12:10:20 /
                                추천
                                0
                             
                                 불의 화상님  소스는 아래와 같이 하고 $this->upload->display_errors('','')를 사용하였습니다     function only_upload_file(){         $upload_folder = $this->_upload_folder_path(BOARD_UPLOAD_FILE_FOLDER);         // 사용자가 업로드 한 파일을 /data/file/ 디렉토리에 저장한다.         $config['upload_path'] = $upload_folder;         // git,jpg,png 파일만 업로드를 허용한다.         $config['allowed_types'] = 'jpeg|gif|jpg|png|bmp|zip|rar|doc|hwp|pdf|ppt|xls|pptx|docx|xlsx|txt';         //$config['allowed_types'] = 'xls|xlsx';         // 허용되는 파일의 최대 사이즈         $config['max_size'] = '7200';         // 이미지인 경우 허용되는 최대 폭         $config['max_width']  = '0';         // 이미지인 경우 허용되는 최대 높이         $config['max_height']  = '0';         //파일이름은 랜덤하게 암호화된 문자열로 변경         $config['encrypt_name'] = TRUE;         $this->load->library('upload', $config);         if ( ! $this->upload->do_upload("upload_file")){             echo '{"files":[{"proc":"F","msg":"'.$this->upload->display_errors('','').'"}]}';         }else{             $data = $this->upload->data();                         $filename = $data['file_name'];             $origname = $data['orig_name'];             $fullPath = str_replace($_SERVER['DOCUMENT_ROOT'], '', $data['full_path']);             echo '{"files":[{';             echo '"proc":"T",';             echo '"msg":"전송에 성공 했습니다",';             echo '"name":"'.$origname.'",';             echo '"fullPath":"'.$fullPath.'"';             echo '}]}';         }     } | 
| 
                                한대승(불의회상)
                                /
                                2014/02/28 12:17:51 /
                                추천
                                0
                             
                                박기천// json을 사용하신다면 json_encode() 라는 편리한 함수가 있답니다.
                             | 
| 
                                박기천
                                /
                                2014/02/28 14:02:37 /
                                추천
                                0
                             
                                 불의회상 // 네 json부분은 json_encode()로 바꿨습니다 감사합니다 | 
ci외 질문게시판으로 이동합니다.