WEB и WordPress новости, темы, плагины. Здесь мы делимся советами и лучшими решениями для сайтов.

Загрузка файла Ajax с помощью PHP и jQuery

895

Вы ищете загрузку файла с помощью Ajax в PHP? Загрузка файла через Ajax сейчас в моде. Это повышает удобство работы пользователей на веб-сайте. В этой статье я покажу вам, как загружать файлы через Ajax с помощью PHP и jQuery.

Загрузка файлов / изображений — обычная задача для разработчиков. Есть несколько случаев, когда вам нужно создать функцию загрузки файлов. Некоторые из распространенных примеров — загрузка фотографий профиля, изображений слайдеров, отзывов, портфолио, каруселей и т.д.

Зачем нужна загрузка файлов с помощью Ajax?

Основная причина выполнения загрузки файла через Ajax заключается в том, что вы не хотите обновлять страницу после загрузки файла. И это очевидно. Нет смысла загружать всю страницу без необходимости. Если вы загружаете страницу после загрузки файла, вы добавляете дополнительную нагрузку на сервер.

Загрузка файлов с помощью Ajax снижает ненужную нагрузку на сервер и улучшает взаимодействие с пользователем на веб-сайте.

Итак, без дальнейших задержек, давайте начнем с кода.

Загрузка файлов с использованием Ajax с PHP и jQuery

Начнем с создания формы с вводом файла и кнопкой отправки. Добавьте приведенный ниже HTML-код в свой файл, скажем index.php.

<form>     <p><input type="file" name="file" class="file" required></p>     <input type="submit" name="submit" class="submit" value="Submit"> </form>

Поскольку я собираюсь написать немного кода JavaScript, я добавил классы «файл» и «отправить» к кнопкам ввода и отправки файла соответственно. Эти классы действуют как идентификатор для элементов формы.

Код JavaScript

Затем напишите код JavaScript, который будет вызывать Ajax на стороне сервера и обрабатывать ответ.

<script src="https://code.jquery.com/jquery-3.5.0.js"></script> <script >     $(function() {         $('.submit').on('click', function() {             var file_data = $('.file').prop('files')[0];             if(file_data != undefined) {                 var form_data = new FormData();                                  form_data.append('file', file_data);                 $.ajax({                     type: 'POST',                     url: 'ajax.php',                     contentType: false,                     processData: false,                     data: form_data,                     success:function(response) {                         if(response == 'success') {                             alert('File uploaded successfully.');                         } else {                             alert('Something went wrong. Please try again.');                         }                            $('.file').val('');                     }                 });             }             return false;         });     }); </script>

В приведенном выше коде JavaScript я отправляю содержимое ajax.phpфайла в файл, а также обрабатываю ответ.

Код PHP

На этом этапе мы закончили отправку содержимого файла на сервер. Теперь создайте файл, в ajax.phpкотором мы должны написать код PHP, который загружает файлы на сервер.

ajax.php

<?php if (!file_exists('uploads')) {     mkdir('uploads', 0777); }    move_uploaded_file($_FILES['file']['tmp_name'], 'uploads/'. $_FILES['file']['name']);    echo "success"; die();

Приведенный выше код PHP сначала проверяет каталог загрузок. Если этот каталог не существует, он создает его и загружает файл в эту папку.

Надеюсь, теперь вы можете легко реализовать загрузку файлов с помощью Ajax на своем веб-сайте. Я хотел бы услышать ваши мысли в разделе комментариев ниже.

Статьи по Теме

Источник записи: artisansweb.net

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