我用codeigniter,mysql和jquery制作上传图片,但是我遇到了一些问题。
这是我的代码。 图
<form id="formupload" method="POST" enctype="multipart/form-data">
<div class="row">
<div class="col-md-3"><input type="file" name="gambar" class="form-control" multiple accept='image/*' required=""></div>
<div class="col-md-3"><input type="text" name="title" class="form-control" placeholder="Title (default is blank)"></div>
<div class="col-md-3"><input type="text" name="description" class="form-control" placeholder="Description (default is blank)"></div>
<div class="col-md-3"><button type="button" onclick="simpan()" class="btn btn-info btn-fill btn-wd"><i class="fa fa-save"></i> Save</button></div>
</div>
Jquery的
function simpan(){
$.ajax({
url : "<?php echo base_url('ruangadmin/slideshow_simpan') ?>",
type: "POST",
data: $('#form').serialize(),
dataType: "multipart/form-data",
success: function(data){
if(data.status){
reload();
swal('Success', 'Images uploaded', 'success');
}
},
error: function (jqXHR, textStatus, errorThrown){
swal('Faild', 'try again!', 'error');
}
});
}
控制器
public function slideshow_simpan(){
$this->cek_session();
$gambar = $_FILES['gambar']['name'];
$title = $this->input->post('title', TRUE);
$description = $this->input->post('description', TRUE);
$config['upload_path'] = FCPATH.'/assets/img/slide/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '1000';
$data = array(
'gambar' => str_replace(" ", "_", $gambar),
'title' => $title,
'description' => $description,
);
$this->load->library('upload',$config);
$this->upload->initialize($config);
$unggah = array(
'gambar' => $this->upload->do_upload('gambar'),
);
$this->modelapp->insertdata('slide', $data);
echo json_encode(array("status" => TRUE));
}
我得到$ _FILES空数据, 某些字段已保存到数据库中但文件名未保存且文件未上载。 如何解决?
感谢。