Dubbio organizzazione database

Salve a tutti,

E' da un pò che non scrivo, prima di tutto complimenti per il nuovo forum, mi piace molto la nuova grafica :)

Vi pongo il mio problema...

Allora di solito per ottenere un database con: categorie, sottocategoria e prodotti, organizzo il database in questo modo:

ma in questi in giorni mi sto cercando di capire il funzionamento dell'url rewrite e avendo il database in questo modo, sono riuscito ad ottenere un url tutt'altro che perfetto:

http://www.miosito.it/1-tv/2-sony/2-tvsony-25.html

allora ho riorganizzato il database così:

ed ho ottenuto l'url quasi in modo perfetto, così:

http://www.miosito.it/tv/sony/2-tvsony-25.html

ma il dubbio che mi sto ponendo è: ma il database in questo secondo metodo è corretto? perché credo che potrei avere qualche problema...

Grazie a tutti per il supporto!

inviato 5 anni fa
cloude
modificato 5 anni fa
X 0 X

L'organizzazione più corretta dei dati era quella iniziale. Infatti una tabella "figlia" per referenziare la tabella "madre" deve usare la sua chiave primaria, nel tuo caso la colonna ID.

Questo non significa che sei costretto ad avere negli URL gli ID della categoria e della sottocategoria. Infatti se i nomi delle categorie e delle sottocategorie sono unici (non sono presenti doppioni) allora puoi sempre risalire alla categoria e sottocategoria citate nell'URL.

In realtà ti basta capire qual è il prodotto per scoprire categoria e sottocategoria di appartenenza. Quindi nell'URL potresti mettere i loro nomi senza nemmeno utilizzarli ma solo per finalità SEO.

risposto 5 anni fa
Gianni Tomasicchio
Ciao Gianni, grazie per il tuo aiuto, ho seguito il tuo consiglio e ho realizzato il tutto con il primo metodo e sono riuscito a realizzare il tutto senza avere gli id negli url, però nel caso di sottocategorie con nomi uguali per esempio: http://www.miosito.it/tv/sony http://www.miosito.it/telecamere/sony mi ritrovo tutti i prodotti nelle in entrambe le sottocategorie, come potrei risolvere questo problema?cloude 5 anni fa
Probabilmente esegui male la query. Le due categorie "sony" hanno lo stesso nome ma non sono uguali, nel senso che non contengono gli stessi prodotti. Per prima cosa devi individuare l'ID corretto della sottocategoria. Per farlo devi cercare la sottocategoria che si chiama "sony" e che ha per categoria di appartenenza "tv" (o "telecamere"). Otterrai quindi il vero ID della sottocategoria selezionata e quindi potrai cercare tutti i prodotti che appartengono a quell'ID.Gianni Tomasicchio 5 anni fa
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda