Salve a tutti , ho una domanda puramente teorica .
Vorrei creare un sistema con php e MySql in cui per esempio ad un prodotto vengano associati vari "tag" colore.
Esempio
Tabella prodotto:
id Nome
1 "Sedia"
2 "Tavolo"
3 "Poltrona"
Tabella colore:
id Colore
1 "Rosso"
2 "Verde"
3 "Blue"
Come prima soluzione utilizzerei una tabella molti a molti per associare quanti colori voglio al prodotto , come ad esempio
Tabella prodotto colore
id idProdotto idColore
1 1 2
2 1 3
3 2 1
4 2 2
5 2 3
6 3 1
7 3 3
La seconda soluzione che ho pensato e testato � stata di creare una terza colonna nella tabella prodotti in cui inserire come un array gli "id" della tabella colori, cosi facendo non devo creare una tabella molti a molti per associare i colori ai prodotti .
Esempio
Tabella "prodotto modificata":
id Nome idColore
1 "Sedia" "2,3"
2 "Tavolo" "1,2,3"
3 "Poltrona" "1,3"
In questo caso al posto di utilizzare una query MySql sulla tabella "prodotto_colore" per sapere in che colori sono disponibili i vari i prodotti, andrei ad utilizzare il php per ciclare la colonna idColore della tabella "prodotto modificata" ottenendo cos� gli "id" dei colori disponibili per il prodotto.
Senza entrare nei dettagli delle query MySql e del codice php ho testato con successo entrambe le soluzioni (testato in locale "MAMP").
Ora la mia domanda � se la seconda soluzione la si pu� ritenere valida per un progetto in ambito professionale e se per caso qualcuno utilizza o ha utilizzato un sistema simile.
Spero di essere riuscito a spiegare il mio quesito.
Ciao grazie