Загрузка товаров в формате *.xlsx в базу данных (MySQL) Opencart 3x
АННОТАЦИЯ: Загрузка товарной номенклатуры в формате *.xlsx в базу данных (MySQL) Opencart 3x. Разработано Web-приложение на PHP, позволяющее
осуществлять импорт товаров с помощью файлов Microsoft Excel в соответствующие таблицы MySQL. Для парсинга файлов Excel применяется модуль PHPExcel-1.8, распространяемый в открытом доступе. Отличительной особенностью php-приложения является дополнительная таблица MySQL "checksum_xlsx", наличие которой значительно сокращает затраты времени на обработку xlsx-файлов больших размеров..
Web-приложение предназначено для загрузки (импорта) xlsx-файлов товарной номенклатуры в электронный магазин Opencart.
Приложение состоит из двух отдельных модулей. Первый модуль - свободно (бесплатно) распространяемый модуль PHPExcel-1.8, обеспечивающий
собственно upload и парсинг xlsx-файлов, а второй модуль представляет собой небольшой php-скрипт для размещения данных полей xlsx таблицы в соответствующих таблицах
Opencart БД MySQL. Образец карточки товара в формате *.xlsx Microsoft Excel имеет минимальный и достаточный набор полей (см. Рис.1) для функционирования интернет магазина в сфере выполнения задач электронной коммерции. При необходимости,
несложный php-скрипт с открытым кодом, позволяет наращивать количество полей (см. Доп.поле на рис.1).
Рис. 1. Пример файла загрузки Excel в формате *.xlsx |
Отличительной особенностью web-приложения является дополнительная таблица MySQL "checksum_xlsx" (см. Рис.2), наличие которой значительно сокращает затраты
времени на обработку xlsx-файлов больших размеров. Эта таблица представляет собой буфер обмена данными между php-скриптом и таблицами
Opencart БД MySQL. Буферная таблица имеет три поля данных - "category_id", "sku" и "len_sum". Поле "category_id" содержит ID категорий интернет-магазина,
поле "sku" является уникальным артиклем товарной позиции, а поле "len_sum" представляет собой контрольную сумму строки xlsx таблицы. При очередной загрузке
товаров выполняется сравнение контрольных сумм (КС). Если КС осталась прежней, то обращения к таблицам Opencart БД MySQL не происходит.
Рис. 2. Дополнительная таблица БД Opencart 3x |
Ссылку на web-приложение удобно разместить на "Панели состояния" электронного магазина Opencart 3x в шаблоне административной части, например как это показано на рис.3. При открытии
web-приложения в браузере раскрывается форма с двумя выпадающими списками (см. Рис.4). Один список соответствует выбору категории Opencart 3x из таблицы MySQL "oc_category_description",
а второй позволяет выбрать Excel файл из директории "files_excel". Собственно web-приложение "parse_excel_to_mysql_multi_catalog.php" располагается в директории "admin" Opencart.
Для отладки web-приложения предусмотрен режим включения "Execute switch to MySQL" с заданием одно из двух состояний "yes" или "no" в файле параметров "parse_params.php".
Рис. 3. Панель состояния электронного магазина Opencart 3x |
Рис. 4. Вид web-приложения в браузере |
Скачать архив *.zip [5Mb] web-приложения можно по ссылке
"Загрузка товаров в формате *.xlsx в Opencart".
Для установки web-приложения на серверe, необходимо выложить все папки и файлы, в том порядке, в котором они сохранены в архиве *.zip. В файле "privat_serverdata.php" отредактировать
параметры доступа к MySQL. В файле ".htaccess" в папке "/public_html/admin/" прописать полный путь к файлу ".stat". Параметры доступа к web-приложению: "user:admin, pass:12345".