[php/mysql] Zapis parametrów do bazy

0

Witam,

na stronie mam kilkadziesiat checkboxów (ok 70) z parametrami ( name=param[] value=123 <-tutaj id etc) dla użytwkonika i teraz jak zapisac to do bazy czy zserializowac tablice, czy string z separatorem,czy jakos inaczej ?(bo chyba tworzenie 70 pól w bazie nie ma sensu, a zawsze mozna dodac dodatkowy parametr czy usunac i bedzie problem) Kazdy parametr do tego ma opis, który potem bede wyswietlal... chyba zrozumiale

Np checboxy do kategorii reklam:
muzyk,film, teatr, kino, moda

a potem chce wyswietlic to co user zaznaczy,np
muzyk,teatr

Nazwy (label) dla checboxow mam w osbnej tabeli:
id,nazwa

Wiec jak zapisac te id, zeby bylo optymalnie ?

Przy pobieraniu dla kazdego id musze pobrac nazwe...

0

Dlaczego uważasz że stworzenie 70 pól jest bez sensu? wyszukiwanie jest wtedy banalne SELECT SELECT * FROM tabela WHERE muzyka=1 i już!
a tak bedziesz musiał sie meczyć:P

0

Baza sie rozsrasta o dodatkowe 70 pól dla każdego usera (nie spotkałem sie jeszcz z czymś takim:) Dla niektórych userów żadne z tych pól nie będzie potrzbne jeśli nic nie zaznaczy. A jak wykonać teraz JOIN, mam napisać 70 połączeń?

SELECT m.*,a.name FROM table m INNER JOIN kategorie k ON k.id1=m.id1, k.id2=m.id2, k.id3=m.id3 ?

Dla mnie malo optymalne...

Myśle ze zrobie dodatkowa tablice gdzie bedzie:
userid,katid
i zapisuje tam ustawienia jakie mi pasuja, latwy dostep i latwo usunac... chyba moze tak byc, no nie? :)

0

najlepiej zrobić to na dodatkowej tabelce (relacja M:N): id_parametru, id_uzytkownika, wartosc_parametru

1 użytkowników online, w tym zalogowanych: 0, gości: 1