3 回答
TA贡献1818条经验 获得超11个赞
您可以在上传库的配置中将时间附加到“文件名”
$config['file_name'] = time().$_FILES['userfile1']['name'];
或者,如果您想要所有文件的唯一名称,只需添加
$config['encrypt_name'] = TRUE;
然后
$this->load->library('upload', $config);
TA贡献1799条经验 获得超9个赞
试试这个:-
$path = pathinfo($_FILES["userfile1"]["name"]);
$image_path = $path['filename'].'_'.time().'.'.$path['extension'];
TA贡献1735条经验 获得超5个赞
我已经为您的代码编写了一个可能的解决方案。您还没有共享完整的代码,因此您必须自己填补空白,并且可能会在这里或那里进行一些更改;必要时会提及评论。看看它是否对你有帮助。
public function your_function_name(){
// your-code
// your-code
// check if file is uploaded in field1
if(!empty($_FILES['userfile1']['name'])){
// call function to upload file
$userfile1 = $this->upload_file('userfile1');
}
// check if file is uploaded in field2
if(!empty($_FILES['userfile2']['name'])){
$userfile2 = $this->upload_file('userfile2');
}
// check if file is uploaded in field3
if(!empty($_FILES['userfile3']['name'])){
$userfile3 = $this->upload_file('userfile3');
}
$result = $this->post_model->adregister($userfile1, $userfile2, $userfile3);
}
// function to upload file
function upload_file($filename){
$config['file_name'] = time().$_FILES[$filename]['name']; // append time to filename
$config['upload_path'] = './assets/images/adsimages';
$config['allowed_types'] = 'gif|jpg|jpeg|png|GIF|JPG|PNG|JPEG';
$config['max_size'] = 5120;
$this->load->library('upload', $config);
$this->upload->initialize($config);
$uploaded = $this->upload->do_upload($filename);
if ( ! $uploaded ){
$error = array('error' => $this->upload->display_errors());
$file = 'no_image.jpg'; // default file
}else{
$upload_data = $this->upload->data();
$file = $upload_data['file_name']; // uploaded file name
}
return $file; // return filename
}
- 3 回答
- 0 关注
- 191 浏览
添加回答
举报