Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用ajax创建目录并在其中上载文件?_Javascript_Php_Jquery_Ajax_Codeigniter - Fatal编程技术网

Javascript 如何使用ajax创建目录并在其中上载文件?

Javascript 如何使用ajax创建目录并在其中上载文件?,javascript,php,jquery,ajax,codeigniter,Javascript,Php,Jquery,Ajax,Codeigniter,在这段代码中,我有一个名为proposition.php的控制器,我希望当我点击按钮上传一个文件时,它会生成目录,上传的文件会保存在里面。现在,目录已成功创建,但文件未上载到其中。那么,我如何解决这个问题?请帮助我 控制器:proposition.php public function upload_file_folder() { $folder_name = $this->input->post('account_name'); mkdir('resource/pr

在这段代码中,我有一个名为proposition.php的控制器,我希望当我点击按钮上传一个文件时,它会生成目录,上传的文件会保存在里面。现在,目录已成功创建,但文件未上载到其中。那么,我如何解决这个问题?请帮助我

控制器:proposition.php

public function upload_file_folder()
{
    $folder_name = $this->input->post('account_name');
    mkdir('resource/proposal_data/'.$folder_name.'_proposal_'.date('Y-m-d').'',0777, true);
    $filename = $_FILES[$this->input->post('file1')]['name'];
    $path = FCPATH."resource/proposal_data/".$folder_name."_proposal_".date('Y-m-d')."";
    $move=move_uploaded_file($_FILES[$this->input->post('file1')]['tmp_name'],$path.$_FILES[$this->input->post('file1')]['name']);
    echo "upload";
}
视图:


$(文档).ready(函数(){
$(“#mk”).bind(“单击”,函数(){
file1=$(“#file1”).val();
账户名称=$(“#账户名称”).val();
$.ajax({
类型:“POST”,
数据:{“file1”:file1,“account\u name”:account\u name},
url:“purposal/upload\u file\u文件夹”,
成功:功能(数据){
警报(数据);
}
});
});
});
上传
谢谢你

你可以试试这个:

    public function upload_file_folder(){
       $folder_name = $this->input->post('account_name');  
       if(!is_dir("uploads/gallery/".$folder_name ."/")) {
           mkdir("uploads/gallery/".$folder_name ."/");
       }

       $target_dir = "uploads/gallery/".$folder_name ."/";
       $target_file = $target_dir.$_FILES['gallery']['name'];

       move_uploaded_file($_FILES['gallery']['tmp_name'],$target_file);
   }
您可以尝试以下方法:

    public function upload_file_folder(){
       $folder_name = $this->input->post('account_name');  
       if(!is_dir("uploads/gallery/".$folder_name ."/")) {
           mkdir("uploads/gallery/".$folder_name ."/");
       }

       $target_dir = "uploads/gallery/".$folder_name ."/";
       $target_file = $target_dir.$_FILES['gallery']['name'];

       move_uploaded_file($_FILES['gallery']['tmp_name'],$target_file);
   }

你们有什么错误?当我上传一个文件时,它会创建一个新的目录,但文件并没有上传到它里面,点击按钮,它会显示错误未定义索引。但警报中未提及索引名称:(您有什么错误?当我上载一个文件时,它会创建一个新目录,但文件不会上载到其中,单击按钮,它会显示“取消定义索引时出错”。但在警报中不会提到索引名称。:)(您是否更改了if条件下的目录路径。因为此代码经过测试。这是我的错误。在$target_dir中,我放置了一个错误的变量。因此,请立即尝试。是的,我认为我的脚本@ChaitanyaI中有一些错误。我正在尝试此操作,但它显示了未文件索引文件1公用函数upload_file_folder(){$folder_name=$this->input->post('account_name');if(!is_dir(“资源/提案_data/”){mkdir(“资源/提案_data/”)“$folder_name.”;}$target_dir=“资源/提案_data/”$folder_name./”;$target_file=$target_dir.$\u FILES['file1'['name'][$key];移动上传的文件($\u FILES['file1']['tmp_name'],$target_file);}请查看我的脚本。删除[$key]。很抱歉,您需要上载单个文件。这是明智的,我为您更改了代码。我在其他问题中给出了此类型的答案。但它是用于多个图像上载的。有关更多帮助,请转到此处:您是否更改了if条件下的目录路径。因为此代码经过测试。这是我的错误。在$target_dir中,我放置了一个错误的变量。因此,tr是的,我想我的脚本@ChaitanyaI有点错误,我正在尝试,但它显示了未定义索引文件1公共函数upload_file_folder(){$folder_name=$this->input->post('account_name');if(!is_dir(“资源/提案_数据/“$folder_名称”。/”){mkdir(“资源/提案_数据/“$folder_名称/”);)$target_dir=“resource/proposition_data/”$folder_name./“$target_file=$target_dir.$_FILES['file1']['name']['name'][$key];move_upload_file($_FILES['file1']['tmp_name'],$target_file);}。请查看我的脚本。删除[$key]。很抱歉,您需要上载单个文件。因此,我为您更改了代码。我在其他问题中给出了此类型的答案。但它是用于多个图像上载的。有关更多帮助,请访问此处: