试试这个。 工作正常
-HTML表单-
<form enctype="multipart/form-data" id="submit"> <div > <label for="menu">Select Menu</label> <select name="selectmenuid" id="selectmenuid"> <option value="">-- Select Menu --</option> <?php foreach($showData as $show):?><option value="<?php echo $show->menu_id?>"><?php echo $show->menu_name?></option> <?php endforeach;?> </select> </div> <div > <label for="menu">Select Sub Menu</label> <select name="selectsubmenu" id="selectsubmenu"> <option>--Select Sub Menu--</option> </select> </div> <div > <label for="imagetitle">Image Title</label> <input type="text" name="imagetitle" id="imagetitle" placeholder="Enter Image Title" required="required"> </div> <div > <div > <label>Upload Photo:</label> <input name="file" type="file" id="image_file" required> <p ></p> </div> </div> <button type="submit" id="sub">Submit</button></form>
阿贾克斯-
$('#submit').submit(function(e){ e.preventDefault(); $.ajax({ url:'Your path', type:"post", data:new FormData(this), processdata:false, contentType:false, cache:false, async:false, success: function(data){ alert(data);} }); });只需在ajax中设置url,即可完美运行。
控制器功能-
public function do_upload(){ $config['upload_path']="./upload"; $config['allowed_types']='gif|jpg|png'; $this->load->library('upload',$config); if($this->upload->do_upload("file")){ $data = array('upload_data' => $this->upload->data()); $data1 = array( 'menu_id' => $this->input->post('selectmenuid'), 'submenu_id' => $this->input->post('selectsubmenu'), 'imagetitle' => $this->input->post('imagetitle'), 'imgpath' => $data['upload_data']['file_name'] ); $result= $this->Admin_model->save_imagepath($data1); if ($result == TRUE) { echo "true"; } } }


