Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> import/export DB>CSV>Excel. Jak odwzorować relację OneToMany w Excel?
szczrzcz
post 11.06.2017, 19:34:43
Post #1





Grupa: Zarejestrowani
Postów: 137
Pomógł: 0
Dołączył: 20.04.2017
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Chciałbym taką funkcjonalność:
- użytkownik eksportuje produkty z db do excel
- edytuje plik
- importuje do bazy

Ale:
- produkty w bazie mają wariacje.
- tzn.: produkt ogórki w tabeli PRODUCT ma product_id==1, ale w tabeli PRODUCT_VARIATION te ogórki o product_id==1 mogą być w opakowaniach 100g, 300g, 500g i każdy ma inne SKU.

Kod
+-------------------+
| PRODUCT           |
+-------------------+
| id | product_name |
+----+--------------+
| 1  |    ogórki    |
+----+--------------+
| 2  |    fasola    |
+----+--------------+
| 3  |   rzodkiew   |
+----+--------------+
| 4  |     arbuz    |
+----+--------------+

Kod
+-------------------------------+
| PRODUCT_VARIATION             |
+-------------------------------+
| id | product_id | sku | price |
+----+------------+-----+-------+
| 1  |      1     | 89  | 2,00  |
+----+------------+-----+-------+
| 2  |      1     | 90  | 3,00  |
+----+------------+-----+-------+
| 3  |      1     | 91  | 5,00  |
+----+------------+-----+-------+
| 4  |      2     | 99  | 4,00  |
+----+------------+-----+-------+




Jak odwzorować taką relację w excel?
Go to the top of the page
+Quote Post
Tomplus
post 12.06.2017, 05:38:20
Post #2





Grupa: Zarejestrowani
Postów: 1 581
Pomógł: 188
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Z OOP to nie ma nic wspólnego. Takich tematów tutaj się nie pisze.

A jak coś, poszukaj sobie w Google jakiś bibliotek PHP -> SQL to Excel/XLS
np.: https://github.com/PHPOffice/PHPExcel

Nie testowałem, więc nie wiem czy rozdziela na arkusze, ale mozesz przetestować.
Go to the top of the page
+Quote Post
Pyton_000
post 12.06.2017, 20:57:50
Post #3





Grupa: Zarejestrowani
Postów: 7 846
Pomógł: 1378
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Z plikami na których ja pracowałem rozwiązane jest to w ten sposób że każdy wiersz zawiera pełny wariant więc do tego co masz w wyniku product_variant doklejasz product_name z tabeli product.

Potem przy importowaniu musisz sobie obsługiwać to czyli grupując wiersze po product_id.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 22.01.2020 - 06:22