2016-01-07 3 views
-6

Я пытаюсь загрузить изображение на сервер с помощью сообщения ajax.Ошибка загрузки изображения Ajax

У меня возникла проблема с изображениями большого размера. Например, я могу загрузить 1MB изображение без проблем, но когда я пытаюсь загрузить 5MB файл изображения $_FILES['errors']Please select file сообщение.

Ajax call, который я использую сейчас.

var request = $.ajax({ 
     url: '/uploadguides', 
     dataType: 'json', 
     cache: false, 
     contentType: false, 
     processData: false, 
     data: formData, 
     type: 'post', 
     async: false 
    }); 

В php.ini я поставил post_max_size = 3M, upload_max_filesize = 64M.

Я думал, что это post_max_size предельная я увеличил его 20M но тот же результат

+4

увеличение 'post_max_size = 3M' к более' 5 МБ ' – urfusion

+0

Я пробовал даже 10M, но без разницы –

+1

вы перезагрузите службу Apache после этого. – urfusion

ответ

0

Во-первых - я нашел это, погуглить получать изображения:

https://github.com/blueimp/JavaScript-Load-Image

Во-вторых, зачем использовать AJAX? Не настраивается ли встроенное изображение Javascript автоматически при загрузке изображения при изменении источника? Как так:

var img = new Image(); 
img.src = "Path to image"; 

Если вы используете выше - все, что вам сделать, это проверить ширину изображения, чтобы знать это был загружен. Просто сделайте немного функцию, чтобы проверить, если файл был загружен так:

function checkImage() 
{ 
    if(img.width < 1){ 
     setTimeout("checkImage()", 100); 
     return; 
     } 

    tellMeItIsLoaded(); 
} 

Или взгляните на эту статью

Load Image from javascript

+0

хорошо его хорошая тема, но не решение для моей проблемы, я знаю, если файл загружен в браузере, у меня есть проверка, но $ _POST и $ _FILES пустые в моем случае. –

+0

Вам нужно разместить ссылку на изображение, чтобы люди могли попробовать загрузить его. Возможно, проблема связана с файлом, а не с javascript. В конце концов, все, что я написал, может обрабатывать ЛЮБОЙ файл размера. Итак, во-первых - если вы даже не собираетесь попробовать наши решения, тогда нет никаких оснований пытаться помочь вам, а во-вторых - если вы попробуете наши решения, и они не сработают, то это не из-за того, что мы но потому что что-то еще не работает, и это оставляет только файл. Помните - не все во всем мире должно пройти через AJAX. –

+0

Я рад за ваше решение, но проблема, с которой я столкнулся, была проблема проблем с серверами wamp, я обновил ее до последней версии, настроенной на php, и это сработало, что-то не так с сервером, а не с кодом на самом деле, я не тестировал ваше решение как я был уверен, что у меня есть файл в браузере, это просто его переместить, и если он работал для файлов меньшего размера, чем он должен работать для более высоких размеров, но появился, что post_max_size не был обновлен на сервере ... –

Смежные вопросы