@from2003
Web developer

Как загрузить изображение на сервер с помощью ajax (jquery)?

Очень много гуглил, попадались в основном решения, основанные на специальных либах под js / jquery, нужно просто отправить форму, в которой выбрано изображение в input type = file, т.е. без лишнего функционала, типо progress бара, drag and drop и т.д., не пойму как передать это изображение php скрипту. Разбирал какие-то исходники, но они либо вообще не работали, либо там какая-то доп. библиотека использовалась.
В общем надеюсь на вашу помощь.
  • Вопрос задан
  • 513 просмотров
Решения вопроса 1
abler98
@abler98
Software Engineer
Примерно так:
$('#form').on('submit', function (e) {
    var file = $('input[type=file]')[0].files[0],
        data = new FormData($(this)[0]);
    if (file == null) {
        alert("File is empty");
        return false;
    }
    e.preventDefault();
    submit(data);
});

function submit(data) {
    $.ajax({
        ...
        data: data,
        method: "POST",
        contentType: false,
        processData: false,
        ...
    });
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
alsopub
@alsopub
Омг... Пример из официальной документации не работает чтоли?
php.net/manual/ru/features.file-upload.post-method.php
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы