| 제목 | 업로드시 파일명 시간으로 변경 | ||
|---|---|---|---|
| 카테고리 | CI 2, 3 | ||
| 글쓴이 | 개미개발자 | 작성시각 | 2021/04/07 15:36:26 |
|
|
|||
|
안녕하세요 저번에 업로드 시 파일명을 db에 저장하는 방법을 물어봤던 사람입니다. 그 부분은 해결했고, 이제는 그 파일명을 현재시간 (ex 202104071535) 으로 변경하여 서버에도 그 변경된 이름으로 저장하고 db에도 저장하는 방법에서 해매는 중입니다. 어려움을 겪고 있으니 직접적으로 알려주시면 정말 감사하겠습니다
function add()
{
$this->_head();
$this->load->library('form_validation');
$this->form_validation->set_rules('title', '제목', 'required');
$this->form_validation->set_rules('description', '본문', 'required');
$this->form_validation->set_rules('main_text', '메인 텍스트', 'required');
$this->form_validation->set_rules('sub_text', '서브 텍스트', 'required');
if ($this->form_validation->run() == FALSE) {
$this->load->view('add');
} else {
$config = array(
'upload_path' => './static/user',
'allowed_types' => 'gif|jpg|png',
'overwrite'=> 'false',
'max_size' => '10000M',
'max_width' => '0',
'max_height' => '0'
);
$this->load->library('upload', $config);
$files = $_FILES;
$photos = array();
foreach ($files['photo']['name'] as $key => $photo) {
$_FILES['photo[]']['name'] = $files['photo']['name'][$key];
$_FILES['photo[]']['type'] = $files['photo']['type'][$key];
$_FILES['photo[]']['tmp_name'] = $files['photo']['tmp_name'][$key];
$_FILES['photo[]']['error'] = $files['photo']['error'][$key];
$_FILES['photo[]']['size'] = $files['photo']['size'][$key];
//$fn=date("YmdHis");
//move_uploaded_file($_FILES['photo[]']['tmp_name'],$fn);
$fileName = $photo;
$photos[] = $fileName;
$config['file_name'] = $fileName;
$this->upload->initialize($config);
if ($this->upload->do_upload('photo[]')) {
$this->upload->data();
} else {
$error = array('error'=> $this->upload->display_errors());
return false;
}
}
$photo = $photos[0];
$photo_1 = $photos[1];
$photo_2 = $photos[2];
$topic_id = $this->topic_model->add($this->input->post('title'), $this->input->post('description'),
$this->input->post('main_text'), $this->input->post('sub_text'), $photo, $photo_1, $photo_2);
$this->load->helper('url');
header('Location: /ant/get/' . $topic_id);
}
}
|
|||
| 다음글 | 코드 이그나이터에서 홈페이지를 제작중에 있는데 외부에서... (2) | ||
| 이전글 | 세션 클래스를 활용하여 세션데이터를 세션테이블로 저장 ... (2) | ||
|
변종원(웅파)
/
2021/04/07 15:59:12 /
추천
0
|
|
개미개발자
/
2021/04/07 16:24:37 /
추천
0
네 파일명이 그대로 담겨서 db에 저장되고 그 파일명만 수정하면 되는 상황입니다
|
$photo, $photo_1, $photo_2 에 각각 파일명이 담긴거 맞나요?
매뉴얼 보시면 업로드할때 파일명을 지정할 수 있게 되어 있습니다. file_name을 원하는 이름으로 바꾸면 서버에 그 이름으로 저장됩니다. db에 그 이름을 그대로 사용해서 저장하시면 됩니다.
http://www.ciboard.co.kr/user_guide/kr/libraries/file_uploading.html#preferences 에서 file_name 부분 참고하세요.