-2
이미지를 업로드하려고하는데 데이터베이스에 저장 중이지만 webroot 폴더에 파일을 저장하는 데 문제가 있습니다.cakephp에서 이미지 업로드 중이며 폴더에 업로드되지 않았습니다.
if ($this->request->is('post')) {
//echo '<pre>';print_r($this->request->data);exit;
$this->request->data['MediaManagement']['created_date']= date('Y-m-d H:i:s');
$this->request->data['MediaManagement']['status'] = 'unpublish';//default
$this->request->data['MediaManagement']['user_id'] = $this->Auth->user('id');
$random_number = $this->Smart->random_code();
//echo $random_number;exit;
$tmp_name = $this->request->data['MediaManagement']['file_name']['tmp_name'];
$name = $this->request->data['MediaManagement']['file_name']['name'];
if(empty($this->request->data['MediaManagement']['media_category_id'])){
$this->request->data['MediaManagement']['media_category_id'] = 0;
}
$this->request->data['MediaManagement']['file_type'] = $this->Smart->get_file_extention($this->request->data['MediaManagement']['file_name']['name']);
if(file_exists(WWW_ROOT.'mediafiles/'.$name))
{
$name= $random_number.$this->request->data['MediaManagement']['file_name']['name'];
}
$this->request->data['MediaManagement']['file_name'] = $name;
//debug($this->request->data);exit;
$this->MediaManagement->create();
if ($this->MediaManagement->save($this->request->data)) {
move_uploaded_file($tmp_name, WWW_ROOT.'mediafiles/'.$name);
$last_mediamanagement_id = $this->MediaManagement->getLastInsertID();
$this->Session->setFlash(__('The media has been saved'));
$this->redirect(array('action' => 'redirectview/'.$last_mediamanagement_id));
} else {
$this->Session->setFlash(__('The media management could not be saved. Please, try again.'));
}
}
$mediaCategories = $this->MediaManagement->MediaCategory->find('list');
$users = $this->MediaManagement->User->find('list');
$this->set('currentUserId',$this->Auth->user('id'));
$this->set(compact('mediaCategories', 'users'));
}
아니요 더 명확하게 제안 할 수 있습니다. – Developer
조정 내용을 포함하여 코드로 내 대답을 업데이트했습니다. – noslone
오류 : SQLSTATE [42S22] : 열을 찾을 수 없습니다 : 1054 알 수없는 '필드 목록'배열의 '배열'INSERT INTO'bolaun_db'.media_managements' ('media_category_id','title', caption','file_name VALUES (1, 'df', 'fd', Array, '2014-02-11 19:22:59', 'unpublish', 575), 'status', 'user_id', 'file_type') , 'JPG') 주의 :이 오류 메시지를 사용자 정의하려면 app \ View \ Errors \ pdo_error.ctp를 작성하십시오. – Developer