sách gpt4 ăn đã đi

javascript - Codeigniter 3 - Ajax 文件上传(您没有选择要上传的文件)

In lại 作者:搜寻专家 更新时间:2023-10-31 21:27:23 24 4
mua khóa gpt4 giày nike

Controller :

function post()
{
if(!$this->input->is_ajax_request())
{
show_404();
ra;
}

$data['result'] = false;

$config['upload_path'] = base_url().'userfiles/customer';
$config['allowed_types'] = 'pdf';
$config['max_size'] = 100000;

$this->load->library('upload', $config);

$file = $this->input->post('userfile');

if ( ! $this->upload->do_upload($file))
{
$data['result'] = true;
$error = array('error' => $this->upload->display_errors());

$data['error'] = $error;
}
khác
{
$data['result'] = true;
$data_upload = array('upload_data' => $this->upload->data());

$data['success'] = $data_upload;
}

echo json_encode($data);
}

查看:


























ORDER



Javascript:

$('.btn').click(function(e){
$('#msg_package').html(' ');
$('#msg_userfile').html(' ');
$('#msg_description').html(' ');

if($('#package').val() == 'none') {
$('#msg_package').html('Please select package');
} else if($('#userfile').val() == '') {
$('#msg_userfile').html('This field is required');
} else if($('#description').val() == '') {
$('#msg_description').html('This field is required');
} khác {

$.ajax({
url : 'account_order/add/post',
type : 'POST',
dataType: 'json',
mimeType:"multipart/form-data",
processData: false,
data : { userfile: $('#userfile')[0].files , price: $('#price').val() , days: $('#days').val() },
success: function( data ) {

if(!data['result']){

}khác{
alert(data['error']);
}
}
});
}
});

但是,我得到一个错误

{"result":true,"error":{"error":"

You did not select a file to upload.<\/p>"}}

我试图从 ajax 发布数据和文件,但它不起作用。我的问题是如何修复该错误?为什么controller读不到userfile的内容?

Cảm ơn

câu trả lời hay nhất

尝试将您的输入放入表单并提供表单 id='your_form_id' 然后通过这种方式在 javascript 中发送您的数据:

var data = new FormData(document.getElementById("your_form_id"));

然后替换这一行 data : { userfile: $('#userfile')[0].files , price: $('#price').val() , days: $('#days' ).val() },

用这个data: data,

也在 data: data, 之后设置:

async: sai,
processData: false,
contentType: false,

关于javascript - Codeigniter 3 - Ajax 文件上传(您没有选择要上传的文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34151367/

24 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress