Как реализовать импорт xls в админке?

Здравствуйте. Делаю импорт данных в базу из файла excel. Алгоритм таков, что после загрузки файла можно будет выбрать соответствующие столбцы из таблицы, выставить их напротив нужных значений и добавить товар. Я уже вывел заголовки столбцов и по средствам drag n drop их можно расставить напротив нужных колонок для добавления в базу. Но как теперь это добавление реализовать? Разбить каждый столбец на массив? использую PHPExcel
  • Вопрос задан
  • 121 просмотр
Решения вопроса 1
glaphire
@glaphire Куратор тега PHP
PHP developer
Не совсем понятно, что у вас уже сделано, (я так понимаю, что на фронтенде вы сделали соответствие "колонка в excel файле => колонка в таблице базы данных"), но алгоритм должен быть такой:
1) на фронтенде вы должны хранить не только человекопонятное название колонки, но и ее код из файла (A-Z) в скрытых свойствах, нп. data-атрибутах, т.е. вам нужно заранее считать лист из excel файла и спарсить оттуда названия колонок.
2) Когда выставите соответствие колонок из файла и колонок из таблиц, то посылаете запрос на бекенд, в котором этот массив соответствий проверяется на реализуемость, потом поячеечно читаете excel файл, подготавливаете sql выражение и записываете в базу. Для ускорения вставки можно использовать batch insert.
PS. PHPExcel уже устарел и не рекомендуется к использованию, возьмите PHPSpreadsheet.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы