У меня есть простой загрузчик изображений 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>
Я могу загружать изображения без проблем, если их размер меньше прим. 50 КБ, что слишком мало для моих целей. Что я могу сделать, чтобы избавиться от этого ограничения?
РЕДАКТИРОВАТЬ:
Так как мой пост был отклонен, потому что в моем коде нет ссылки на ограничение в 50 КБ: ограничения нет. Я не кодировал ничего, как ограничение размера файла, но все же есть один — Почему?
В вашей форме нет действительного энктипа.
Загрузка файлов требует enctype="multipart/form-data"
быть внутри формы тегов.
Измените вашу форму так, чтобы она была такой:
<form action="" method="POST" id="post_image_form" enctype="multipart/form-data">
Других решений пока нет …