当我从ajax发送formdata时,发布文件为null

时间:2019-04-08 11:44:13

标签: php jquery ajax

我正在尝试将图像从jquery发送到php,但是php的$ _FILES答案为空。 有人可以告诉我我错了吗?

js文件

$('form.cwd-add-photo').on('submit',function(event){
        event.preventDefault();
        var files = $('.cwd-add-photo input[name="cwd-img-upload"]').prop('files')[0];
        var formData = new FormData();
        formData.append("cwd_system_require","cwd_add_photo");;
        $.each(files, function(key, value) {
            formData.append('photo['+key+']', value);
        });
        $.ajax({
            url: window.location.origin+'/cwd_call',
            type: 'post',
            data: formData,
            contentType: false,
            processData: false,
            success: function(item){
                console.log(item);
            },
        });

    });

php文件

if(isset($_POST['cwd_system_require'])){
switch($_POST['cwd_system_require']){
    case 'cwd_add_photo':
            var_dump($_FILES);
            var_dump($_POST);
        break;
}

1 个答案:

答案 0 :(得分:1)

在表单字段中添加“ enctype”:

<form action="" method="post" enctype="multipart/form-data">
</form>