Создание в OpenCart инструмента импорта товаров из CSV — Часть 2

Создание в OpenCart инструмента экспорта товаров в CSV

От автора: эта статья является частью серии под названием «Создание в OpenCart инструмента импорта товаров из CSV». В предыдущей статье мы рассмотрели, как реализовать инструмент импорта, в котором мы создали кнопку импорта и задали внешний шаблон. Сегодня мы узнаем, как напрямую пакетно импортировать данные с компьютера в OpenCart.

Рассмотрим сначала сначала все в целом. В предыдущем руководстве мы реализовали инструмент экспорта, который позволяет пользователю скачивать CSV-списки и изменять их при необходимости. После этого мы создали инструмент импорта, который позволяет загружать / импортировать отредактированный файл / данные. В первой части мы реализовали макет того, как работает в OpenCart импорт. В этой части мы реализуем функционал.

Файл контроллера

В предыдущей части мы создали контроллер, что привело нас к созданию формы загрузки. В файле представления макета у нас было поле загрузки, через которое пользователь может загрузить CSV, как показано ниже:

Откройте файл admin/controller/catalog/product.php. Найдите функцию importCSV(), которую мы создали в предыдущей части.
Добавьте после нее код:

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

Получение файла

Следующий код открывает представленный CSV-файл и обрабатывает его как файл только для чтения.

Обработка каждой записи

Теперь нам нужно обработать каждую строку CSV и сохранить в базе данных. Для этого мы будем обрабатывать записи через цикл и сохранять их.

Перенаправление

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

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

Файл модели

Откройте файл admin/model/catalog/product.php. Создайте в нем публичную функцию importCsvData($data). Внутри функции модели мы добавим следующий код, содержащий несколько запросов для сохранения данных.

Заключение

Итак, в этой статье мы предоставили полное решение системы экспорта / импорта. С помощью этого инструмента пользователи могут редактировать / обновлять свои данные. Это решение очень просто для использования и реализации. Я с нетерпением жду ваших отзывов. Вы можете оставить свои комментарии или вопросы ниже. Спасибо за внимание!

Автор: Zaman Riaz

Источник: //code.tutsplus.com/

Редакция: Команда webformyself.

Метки:

Похожие статьи:

Комментарии Вконтакте: