jQuery / ajax / PHP图像上传者大小限制

时间:2015-02-15 20:16:19

标签: php jquery ajax image uploader

我有一个简单的jQuery / ajax / PHP图像上传器:

jQuery / Java Script

$('#submit_image').on('click', function() {
    var file_data = $('#post_upload').prop('files')[0];   
    var form_data = new FormData();                  
    form_data.append('file', file_data);

$.ajax({
            url: 'upload.php', 
            dataType: 'text',
            cache: false,
            contentType: false,
            processData: false,
            data: form_data,                         
            type: 'POST',
            success: function(php_script_response){
                alert(php_script_response);
            }
 });
});

upload.php的

<?php

if ( 0 < $_FILES['file']['error'] ) {
    echo 'Error: ' . $_FILES['file']['error'] . '<br>';
}
else {

    echo $_FILES['file']['size'];

    move_uploaded_file($_FILES['file']['tmp_name'], 'user/upload/'. $_FILES['file']['name']);
}

?>

HTML表单

<form action="" method="POST" id="post_image_form">
        <input type="file" id="post_upload" name="image" accept="image/*" />
        <input type="submit" id="submit_image" class="button" value=" share " />
</form>

只要文件大小小于约,我就可以毫无问题地上传图片。 50kb对我来说太小了。我该怎么做才能摆脱这个限制?

编辑: 由于我的帖子被低估了,因为我的代码中没有关于50kb限制的引用:没有限制。我没有像文件大小限制那样编码,但仍有一个 - 为什么?

1 个答案:

答案 0 :(得分:2)

您的表单中没有有效的enctype。

上传文件需要enctype="multipart/form-data"在表单标记内。

修改您的表单,使其如下所示:

<form action="" method="POST" id="post_image_form" enctype="multipart/form-data">