在这段代码中,我有一个名为proposal.php的 Controller ,我希望当我上传文件onclick按钮时,它会创建目录并上传的文件将保存在其中。现在,目录已成功创建,但其中的文件尚未上传。那么,我该如何解决这个问题?请帮助我。
Controller :proposal.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";
}
查看:
<script>
$(document).ready(function(){
$("#mk").bind("click",function(){
file1 = $("#file1").val();
account_name = $("#account_name").val();
$.ajax({
type:"POST",
data:{"file1":file1, "account_name":account_name},
url:"<?php echo base_url('index.php/'); ?>purposal/upload_file_folder",
success:function(data){
alert(data);
}
});
});
});
</script>
<input type="file" name="file1" id="file1">
<button type="submit" name="mk" id="mk">upload</button>
谢谢
最佳答案
你可以试试这个:
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);
}
关于javascript - 如何使用ajax创建目录并在其中上传文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47029303/