簡體   English   中英

動態創建文件夾在Codeigniter中不起作用

[英]Dynamically folder creation is not working in 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'); 

低於1則無法使用,並且文件夾正在根文件夾中創建。

$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);
  }

您將創建文件夾。 它在我身上工作。

謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM