DeltaDIM
Новичок
ПХП скрипт интернет магазина
Привет!
Пишу на ПХП скрипт интернет магазина.
И уже который раз сталкиваюсь с проблемой импорта прайс листа в базу данных.
Есть таблица в Excel'e:
Артикул | Наимен. | Фирма | Описание | Цена |
zzz_1 | ЗЕНИТ | ЗЕНИТ | | | *
zzz_2 | ЗЕНИТ | Мебель для детей | | | **
zzz_3 | ЗЕНИТ | Детская | | | ***
zzz_4 | ЗЕНИТ | Детская МАРТИН - 3 (шт.) | 2050*3000*590 | 9960 |
zzz_5 | ЗЕНИТ | Детская СОФИЯ (шт.) | 1250*1500*300/600 | 3410 |
zzz_6 | ЗЕНИТ | Детская СОФИЯ - 2 (шт.) | 1050х1200 х580 | 1930 |
zzz_7 | ЗЕНИТ | Детская ЧЕБУРАШКА (шт.) | 1900*2600*450/350 | 7230 |
zzz_8 | ЗЕНИТ | Детская ЮНИОР - 2 (шт.) | | 9720 |
zzz_9 | ЗЕНИТ | Комод | | | ***
zzz_10 | ЗЕНИТ | Комод Елена (шт.) | 1120*1270*430 | 5070 |
zzz_11 | ЗЕНИТ | Комод с гнутым фасадом (шт.) | 850 *1000*450 | 2820 |
zzz_12 | ЗЕНИТ | Кровать | | | ***
zzz_13 | ЗЕНИТ | Кровать НОЧКА (шт.) | 650*2040*846 | 1610 |
u_1 | УЮТ | УЮТ | | | *
u_2 | УЮТ | Тумбы | | | **
u_3 | УЮТ | Тумбы под ТВ | | | ***
u_4 | УЮТ | Тумба под ТВ АКВАРИО (шт.) | 729 Х 870 Х 550 | 2130 |
u_5 | УЮТ | Тумба под ТВ АКВАРИО - 2 (шт.) | 665 Х 870 Х 550 | 1760 |
u_6 | УЮТ | Тумба под ТВ ДОМИНО (шт.) | 663 Х 600 Х 450 | 820 |
u_7 | УЮТ | Тумба под ТВ ДОМИНО - 2 (шт.) | 685 Х 600 Х 450 | 1000 |
u_8 | УЮТ | Тумба под ТВ ДЮНА (шт.) | 640 Х 1360 Х 550 | 3795 |
u_9 | УЮТ | Тумба под ТВ Н - 05 (шт.) | 605 Х 800 Х 400 (кр.3 шт.) | 880 |
u_10 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 (шт.) | 643 Х 700 Х 497 | 1060 |
u_11 | УЮТ | Тумбы общие | | | ***
u_12 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 с поворотной доской (шт.) | 665 Х 700 Х 497 | 1200 |
u_13 | УЮТ | Тумба под ТВ НАРОДНАЯ - 2 (шт.) | 685 Х 718 Х 460 | 1160 |
А мне ее нужно добавить в БД в таком виде:
Артикул | Наимен. | Фирма | Описание | Цена | | ID | parID
zzz_1 | ЗЕНИТ | ЗЕНИТ | | | * | 1 | 0
zzz_2 | ЗЕНИТ | Мебель для детей | | | ** | 2 | 1
zzz_3 | ЗЕНИТ | Детская | | | *** | 3 | 2
zzz_4 | ЗЕНИТ | Детская МАРТИН - 3 (шт.) | 2050*3000*590 | 9960 | | 1 | 3
zzz_5 | ЗЕНИТ | Детская СОФИЯ (шт.) | 1250*1500*300/600 | 3410 | | 2 | 3
zzz_6 | ЗЕНИТ | Детская СОФИЯ - 2 (шт.) | 1050х1200 х580 | 1930 | | 3 | 3
zzz_7 | ЗЕНИТ | Детская ЧЕБУРАШКА (шт.) | 1900*2600*450/350 | 7230 | | 4 | 3
zzz_8 | ЗЕНИТ | Детская ЮНИОР - 2 (шт.) | | 9720 | | 5 | 3
zzz_9 | ЗЕНИТ | Комод | | | *** | 4 | 2
zzz_10 | ЗЕНИТ | Комод Елена (шт.) | 1120*1270*430 | 5070 | | 6 | 4
zzz_11 | ЗЕНИТ | Комод с гнутым фасадом (шт.) | 850 *1000*450 | 2820 | | 7 | 4
zzz_12 | ЗЕНИТ | Кровать | | | *** | 5 | 2
zzz_13 | ЗЕНИТ | Кровать НОЧКА (шт.) | 650*2040*846 | 1610 | | 8 | 5
u_1 | УЮТ | УЮТ | | | * | 13 | 0
u_2 | УЮТ | Тумбы | | | ** | 14 | 13
u_3 | УЮТ | Тумбы под ТВ | | | *** | 15 | 14
u_4 | УЮТ | Тумба под ТВ АКВАРИО (шт.) | 729 Х 870 Х 550 | 2130 | | 44 | 15
u_5 | УЮТ | Тумба под ТВ АКВАРИО - 2 (шт.) | 665 Х 870 Х 550 | 1760 | | 45 | 15
u_6 | УЮТ | Тумба под ТВ ДОМИНО (шт.) | 663 Х 600 Х 450 | 820 | | 46 | 15
u_7 | УЮТ | Тумба под ТВ ДОМИНО - 2 (шт.) | 685 Х 600 Х 450 | 1000 | | 47 | 15
u_8 | УЮТ | Тумба под ТВ ДЮНА (шт.) | 640 Х 1360 Х 550 | 3795 | | 48 | 15
u_9 | УЮТ | Тумба под ТВ Н - 05 (шт.) | 605 Х 800 Х 400 (кр.3 шт.) | 880 | | 49 | 15
u_10 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 (шт.) | 643 Х 700 Х 497 | 1060 | | 50 | 15
u_11 | УЮТ | Тумбы общие | | | *** | 16 | 14
u_12 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 с поворотной доской (шт.) | 665 Х 700 Х 497 | 1200 | | 51 | 16
u_13 | УЮТ | Тумба под ТВ НАРОДНАЯ - 2 (шт.) | 685 Х 718 Х 460 | 1160 | | 52 | 16
Причем, все же будут созданы 2 таблици, одна для директорий, др. для товаров.
* - обозначаются директории, количество их указывает на глубину этой директории от главной
ID - номер товара или директории
parID - ID номер той директории, к которой этот товар или директория принадлежит
Еще, я где-то видел, что преобразование в конечную таблицу можно сделать прямо в Экселе, пользуясь каким-то
макросом. Этот вариант будет даже лучше!
Не подскажите, где можно взять такой макрос?
Привет!
Пишу на ПХП скрипт интернет магазина.
И уже который раз сталкиваюсь с проблемой импорта прайс листа в базу данных.
Есть таблица в Excel'e:
Артикул | Наимен. | Фирма | Описание | Цена |
zzz_1 | ЗЕНИТ | ЗЕНИТ | | | *
zzz_2 | ЗЕНИТ | Мебель для детей | | | **
zzz_3 | ЗЕНИТ | Детская | | | ***
zzz_4 | ЗЕНИТ | Детская МАРТИН - 3 (шт.) | 2050*3000*590 | 9960 |
zzz_5 | ЗЕНИТ | Детская СОФИЯ (шт.) | 1250*1500*300/600 | 3410 |
zzz_6 | ЗЕНИТ | Детская СОФИЯ - 2 (шт.) | 1050х1200 х580 | 1930 |
zzz_7 | ЗЕНИТ | Детская ЧЕБУРАШКА (шт.) | 1900*2600*450/350 | 7230 |
zzz_8 | ЗЕНИТ | Детская ЮНИОР - 2 (шт.) | | 9720 |
zzz_9 | ЗЕНИТ | Комод | | | ***
zzz_10 | ЗЕНИТ | Комод Елена (шт.) | 1120*1270*430 | 5070 |
zzz_11 | ЗЕНИТ | Комод с гнутым фасадом (шт.) | 850 *1000*450 | 2820 |
zzz_12 | ЗЕНИТ | Кровать | | | ***
zzz_13 | ЗЕНИТ | Кровать НОЧКА (шт.) | 650*2040*846 | 1610 |
u_1 | УЮТ | УЮТ | | | *
u_2 | УЮТ | Тумбы | | | **
u_3 | УЮТ | Тумбы под ТВ | | | ***
u_4 | УЮТ | Тумба под ТВ АКВАРИО (шт.) | 729 Х 870 Х 550 | 2130 |
u_5 | УЮТ | Тумба под ТВ АКВАРИО - 2 (шт.) | 665 Х 870 Х 550 | 1760 |
u_6 | УЮТ | Тумба под ТВ ДОМИНО (шт.) | 663 Х 600 Х 450 | 820 |
u_7 | УЮТ | Тумба под ТВ ДОМИНО - 2 (шт.) | 685 Х 600 Х 450 | 1000 |
u_8 | УЮТ | Тумба под ТВ ДЮНА (шт.) | 640 Х 1360 Х 550 | 3795 |
u_9 | УЮТ | Тумба под ТВ Н - 05 (шт.) | 605 Х 800 Х 400 (кр.3 шт.) | 880 |
u_10 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 (шт.) | 643 Х 700 Х 497 | 1060 |
u_11 | УЮТ | Тумбы общие | | | ***
u_12 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 с поворотной доской (шт.) | 665 Х 700 Х 497 | 1200 |
u_13 | УЮТ | Тумба под ТВ НАРОДНАЯ - 2 (шт.) | 685 Х 718 Х 460 | 1160 |
А мне ее нужно добавить в БД в таком виде:
Артикул | Наимен. | Фирма | Описание | Цена | | ID | parID
zzz_1 | ЗЕНИТ | ЗЕНИТ | | | * | 1 | 0
zzz_2 | ЗЕНИТ | Мебель для детей | | | ** | 2 | 1
zzz_3 | ЗЕНИТ | Детская | | | *** | 3 | 2
zzz_4 | ЗЕНИТ | Детская МАРТИН - 3 (шт.) | 2050*3000*590 | 9960 | | 1 | 3
zzz_5 | ЗЕНИТ | Детская СОФИЯ (шт.) | 1250*1500*300/600 | 3410 | | 2 | 3
zzz_6 | ЗЕНИТ | Детская СОФИЯ - 2 (шт.) | 1050х1200 х580 | 1930 | | 3 | 3
zzz_7 | ЗЕНИТ | Детская ЧЕБУРАШКА (шт.) | 1900*2600*450/350 | 7230 | | 4 | 3
zzz_8 | ЗЕНИТ | Детская ЮНИОР - 2 (шт.) | | 9720 | | 5 | 3
zzz_9 | ЗЕНИТ | Комод | | | *** | 4 | 2
zzz_10 | ЗЕНИТ | Комод Елена (шт.) | 1120*1270*430 | 5070 | | 6 | 4
zzz_11 | ЗЕНИТ | Комод с гнутым фасадом (шт.) | 850 *1000*450 | 2820 | | 7 | 4
zzz_12 | ЗЕНИТ | Кровать | | | *** | 5 | 2
zzz_13 | ЗЕНИТ | Кровать НОЧКА (шт.) | 650*2040*846 | 1610 | | 8 | 5
u_1 | УЮТ | УЮТ | | | * | 13 | 0
u_2 | УЮТ | Тумбы | | | ** | 14 | 13
u_3 | УЮТ | Тумбы под ТВ | | | *** | 15 | 14
u_4 | УЮТ | Тумба под ТВ АКВАРИО (шт.) | 729 Х 870 Х 550 | 2130 | | 44 | 15
u_5 | УЮТ | Тумба под ТВ АКВАРИО - 2 (шт.) | 665 Х 870 Х 550 | 1760 | | 45 | 15
u_6 | УЮТ | Тумба под ТВ ДОМИНО (шт.) | 663 Х 600 Х 450 | 820 | | 46 | 15
u_7 | УЮТ | Тумба под ТВ ДОМИНО - 2 (шт.) | 685 Х 600 Х 450 | 1000 | | 47 | 15
u_8 | УЮТ | Тумба под ТВ ДЮНА (шт.) | 640 Х 1360 Х 550 | 3795 | | 48 | 15
u_9 | УЮТ | Тумба под ТВ Н - 05 (шт.) | 605 Х 800 Х 400 (кр.3 шт.) | 880 | | 49 | 15
u_10 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 (шт.) | 643 Х 700 Х 497 | 1060 | | 50 | 15
u_11 | УЮТ | Тумбы общие | | | *** | 16 | 14
u_12 | УЮТ | Тумба под ТВ НАРОДНАЯ - 1 с поворотной доской (шт.) | 665 Х 700 Х 497 | 1200 | | 51 | 16
u_13 | УЮТ | Тумба под ТВ НАРОДНАЯ - 2 (шт.) | 685 Х 718 Х 460 | 1160 | | 52 | 16
Причем, все же будут созданы 2 таблици, одна для директорий, др. для товаров.
* - обозначаются директории, количество их указывает на глубину этой директории от главной
ID - номер товара или директории
parID - ID номер той директории, к которой этот товар или директория принадлежит
Еще, я где-то видел, что преобразование в конечную таблицу можно сделать прямо в Экселе, пользуясь каким-то
макросом. Этот вариант будет даже лучше!
Не подскажите, где можно взять такой макрос?