| 제목 | 궁금한것이 있습니다. 파일에 대해서 | ||
|---|---|---|---|
| 글쓴이 | 과학나라 | 작성시각 | 2013/10/01 16:57:28 | 
|  | |||
| 우선 파일첨부하면 첨부한 파일이 지정된 경로로 저장이 됩니다만 문제는 list에서 글제목 클릭시 view페이지에 해당 첨부된 파일을 저장하는 방법인데요. 소스를 보여드리자면 컨트롤러 
 public function writepost()
 {
   $this->load->model('mcommon');  //모델 호출
   $this->mcommon->write_entry(); //쓰기
   
   
   
//파일첨부   
   // 사용자가 업로드 한 파일을 /static/user/ 디렉토리에 저장한다.
    $config['upload_path'] = './static/user';
    // git,jpg,png 파일만 업로드를 허용한다.
    $config['allowed_types'] = 'gif|jpg|png';
    // 허용되는 파일의 최대 사이즈
    $config['max_size'] = '100';
    // 이미지인 경우 허용되는 최대 폭
    $config['max_width']  = '1024';
    // 이미지인 경우 허용되는 최대 높이
    $config['max_height']  = '768';
    $this->load->library('upload', $config);
     
  if ( ! $this->upload->do_upload("user_upload_file"))
  {
  echo $this->upload->display_errors();
  } 
else
{
$data = array('upload_data' => $this->upload->data());
$this->load->view('vOneToOneView',  array('return'=>$data));  <--
}
redirect('/cQuestion/fOneToOneList/'); //view list로 돌아가기
 }쓰기 부분입니다. 일단 <-- 표시에 보시면 view페이지로 넘어가는 과정입니다. view <td>첨부파일</td> <td><?=$return->user_upload_file?></td> </tr>파일 name값 user_upload_file로 받는 과정(쓰기 view파일에 name값 user_upload_file로 지정)인데. 값을 불러올수 없다는 식으로 오류가 나오네요. "Message: Undefined property: stdClass::$user_upload_file" 제가 간단한 실수를 범하고 있는거 같고 원리가 틀린거 같은데 도움 부탁드립니다. | |||
| 다음글 | pagenation관련 질문 (3) | ||
| 이전글 | 레이아웃 질문잇습니대 (2) | ||
| 
                                변종원(웅파)
                                /
                                2013/10/01 17:07:11 /
                                추천
                                0
                             | 
| 
                                milosz
                                /
                                2013/10/02 07:50:37 /
                                추천
                                0
                             
                                 메뉴얼 보고 질문해주세요 :)
                             | 
왜 안되는지 화면에 출력을 해보세요.
뷰에서 var_dump($return); 을 출력해보세요.
컨트롤러에서 2차 배열을 다시 배열에 담아 넘겼으니 뷰에서 그렇게 쓰면 당연히 에러 납니다.
$data=array('upload_data'=>$this->upload->data());$this->load->view('vOneToOneView',array('return'=>$data);작동 원리를 아직 잘 모르고 매뉴얼에 있는거 가져다 쓰기만 하니까 문제가 되는 겁니다.
$this->upload->data() 이 데이터도 화면에 출력 안해보셨죠? 뭐가 나오는지?
이거 자체가 2차원 배열입니다 그걸 다시 배열에 담아 $data에 할당하고 그걸 다시 배열로 $return에할당하고.....
$this->upload->data();$this->load->view('vOneToOneView',$data);위와 같이 하고 뷰에서 var_dump($file_data); 출력해보세요.
그럼 어떻게 사용해야할지 답 나옵니다.
다시 말씀 드리는데 작업 중지하시고 매뉴얼 세번 정도 숙독하시고 작업하세요.