2015-01-21 85 views
-1

问题,当上传影像MVC与阿贾克斯,我在课堂设置从页面c_ajax_img.php调用controls_class.php内容功能upload_img_admin如何用ajax上传图片文件?

页c_ajax_img.php类设置

include_once('controls_class.php'); 
$ajax_up_img = new settings; 
$ajax_up_img->upload_img_admin(@$_FILES['file_upload']); 

功能upload_img_admin

function upload_img_admin() 
{ 
     $dir_name=dirname(__FILE__)."/upload/"; 
     [email protected]$_FILES['file_upload']['tmp_name']; 
     [email protected]$_FILES['file_upload']['name']; 
     [email protected]$_FILES['file_upload']['size']; 
     [email protected]$_FILES['file_upload']['type']; 
     [email protected]$_FILES['file_upload']['error']; 
        ... 
        ... 

if(isset($_FILES['file_upload'])) 
    { 
     move_uploaded_file($path,$dir_name.$name); 
         ... 
         ... 
     echo "ok"; 

    } 
    else 
    { 
     echo "File not found"; 
     } 

} 

功能ajax获取数据表并发送到功能以前的上传图像

$(document).ready(function() { 
$(".btn_upload_avatar").click(function(e) { 
$('.msgerror').hide().fadeIn(1000).html( '<div class="loading"></div>'); 
e.preventDefault(); 
$.ajax({ 
type:"POST", 
url: "../controls/c_ajax_img.php", 
cache: false, 
processData:false, 
contentType: false, 
data:$("#form_up_img").serialize(), 
success: function (data) 
{ 
    if(data == 0){     
    $('.msgerror').addClass('msgerror_in2').html(data);  
}else{ 
    $('.msgerror').addClass('msgerror_in2').html(data); 
} 
} 
}); 
}); 
}); 
+0

http://stackoverflow.com /问题/ 25855758 /显示上传的图像,后成功上传/ 26038832#26038832 你会得到从这里 – 2015-01-21 05:57:09

+0

答案,如果你没有得到,那么答案让我知道 – 2015-01-21 06:01:45

+0

我没有得到答案。 .. – Maximus 2015-01-21 06:04:52

回答

1

像这样的东西可以帮助你队友.. :)

$(document).ready(function() { 
     $('#UploadForm').on('submit',(function(e) { 
      $('.msgerror').hide().fadeIn(1000).html('<div class="loading"></div>'); 
      e.preventDefault(); 
      var formData = new FormData(this); 
      formData.append('file', input.files[0]); 

      $.ajax({ 
       url: '../controls/c_ajax_img.php', 
       data: formData, 
       contentType: false, 
       type: 'POST', 
       processData: false, 
       success: function (data) { 
        console.log("success"); 
        console.log(data); 
       }, 
       error: function (data) { 
        console.log("error"); 
        console.log(data); 
       } 
      }); 
     }); 
    }); 

FYI

FormData

过程数据设置为false,因此,它可以防止从jQuery的自动转化数据转化为查询字符串

+0

我解决了函数jquery中的错误单击类'$(“ ('#form_up_img“)。(('#form_up_img')。'(submit',((#)...')函数(e)....' 谢谢 – Maximus 2015-01-21 15:40:49