php - 动态文件夹创建在 Codeigniter 中不起作用
问题描述
这是我用于上传功能的基本控制器
protected function upload_data($folder, $name) {
$config = array(
'upload_path' => "./upload/".$folder,
'overwrite' => FALSE,
'allowed_types' => "gif|jpg|png|jpeg|pdf",
'max_size' => "2048000", // Can be set to particular file size , here it is 2 MB(2048 Kb)
);
if ($name == "image") {
$config['allowed_types'] = "gif|jpg|png|jpeg";
// $config['max_height'] = "450";
// $config['max_width'] = "400";
} else if ($name == "video") {
$config['allowed_types'] = "mp4|webm|mpeg";
$config['max_size'] = "5120000";
} else if ($name == "cv_file") {
$config['allowed_types'] = "pdf|doc|docx";
}
$this->load->library('upload', $config);
if($this->upload->do_upload($name)) {
$data = array('upload_data' => $this->upload->data());
unset($this->upload);
return $data;
} else {
$error = array('error' => $this->upload->display_errors());
unset($this->upload);
return $error;
}
}
下面是我访问此上传功能的控制器代码
public function uploadCheckLists()
{
$post_data = $this->input->post();
$cv_data = $this->upload_data('files', 'cv_file');
if (isset($cv_data['upload_data'])) {
$file_path = $cv_data['upload_data']['file_path'];
$data['cv_name'] = $cv_data['upload_data']['file_name'];
}
}
这工作正常。但是当我想动态创建与用户相关的文件夹时,该文件夹是在根文件夹中创建的,而不是在指定路径中。这是我动态创建文件夹的代码
When I replace this line
$cv_data = $this->upload_data('files', 'cv_file');
低于一个它不起作用,文件夹正在根文件夹中创建。
$cv_data = $this->upload_data('files/'.mkdir($post_data['selected_user_enc_id']), 'cv_file');
So the folder should create like files/58 (user id)
在这方面我做错了什么可以帮助我吗?任何帮助将不胜感激。
解决方案
必须检查是否没有,然后在您的路径上创建文件夹
if (!file_exists('./upload/'.$folder)) {
mkdir('./upload/'.$folder, 0777, true);
}
您将创建文件夹。这是我的工作。
谢谢你
推荐阅读
- python - Regex on zero or more character but not newline nor space in Python
- ansible - 无法使用 authorized_keys ansible 模块进行无密码通信
- jquery - Setting HTML table borders to combine tables to appear to look like one table (JQuery)
- java - Android BottomNavigation fragment show/hide after App (screen) rotate
- css - Css: How to apply the same list-style-type bullets for html sub-lists?
- django - 虚拟环境中的 pip 指向全局安装并且不使用 virtualenv 站点包
- python - vstack 两个 5GB 阵列的最有效方法
- angular - 如何强制组件重新加载
- wordpress - 为什么 css 和 js 不能在 wordpress 上运行?
- python - Permutation of Stripes in Flag on conditions