Ciao,
premetto che sono un grafico, chi volesse aiutarmi prego usare linguaggio a prova di scemo.
Ho delle macrocategorie ad esempio (perdonate l'esempio):
- Libri grandi
- Libri medi
- Libri piccoli
poi ho delle subcategorie:
- rossi
- gialli
- verdi
Le subcategorie possono essere in comune a più macrocategorie:
- Libri grandi > rossi
- Libri medi > rossi
per non dover ripetere per ogni macro tutte le subcategorie ho adottato due tabelle:
MACROCATEGORIE
- id
- categoria
SUBCATEGORIE
- id
- categoria
- parents
dove "parents" è di tipo SET e contiene gli id delle macrocategorie ('1','2','3')
In questo modo non vincolo le sub alle macro.
Se volessi recuperare tutti i libri rossi indipendentemente dalle dimensioni, posso farlo
Fino a qui vorrei sapere se questa è la soluzione migliore.
======================================
Poi ho inserito nella mia pagina di insert/edit un "dependent dropdown" (dreamweaver developer toolbox)
query per il dropdown "macro" (master)
"SELECT m.id, m.categoria FROM macro m"
query per il dropdown "sub" (dettaglio)
"SELECT m.id, m.categoria, s.id, s.categoria, FROM macro m, sub s WHERE FIND_IN_SET(m.id, s.parents) > 0"
Sembra che funzioni tutto ma:
in fase di editing di un record, poniamo che recupero un prodotto sotto la voce:
Libri medi > rossi (i rispettivi id scritti nel database sono giusti)
il menu "macro" mi da "Libri grossi"
in pratica con macro che hanno sub in comune prevale quella con id più basso
======================================
Sperando di non aver stordito nessuno spero in un aiuto
vi ringrazio e saluto