Rezultate 1 la 7 din 7

Subiect: Cum pun un produs sa apara in 2 subcategorii diferite ?

  1. #1
    Avatarul lui evolution
    evolution este deconectat Membru SeoPedia
    Reputatie:
    37
    Data înscrierii
    29th October 2006
    Locaţie
    Bucuresti
    Posturi
    997
    Putere Rep
    37


    Implicit Cum pun un produs sa apara in 2 subcategorii diferite ?

    Am in mysql 3 tabele: categorii , subcategorii , produse. In tabela cu produse , fiecare id de produs are printre altele 2 rows cu categoria si subcategoria din care face parte.

    Cum ar trebui sa fac astfel incat un produs sa fie listat in 2 subcategorii diferite (dar sa pastreze acelasi unic url in linkul catre el) ?

    ex subcategorii
    Copaci
    Fructe

    Am produsul "alune" cu url-ul www site ro/idprodus/alune.html

    Cum pot face sa apara listat in fiecare din cele 2 subcategorii ?

  2. #2
    Avatarul lui c_n_m
    c_n_m este deconectat Ambasador
    Reputatie:
    37
    Data înscrierii
    25th February 2006
    Locaţie
    București / Ilfov
    Vârstă
    52
    Posturi
    622
    Putere Rep
    37


    Implicit

    Daca un produs trebuia sa apara in cadrul unei singure subcategorii, era suficient sa ai un camp id_subcategorie in tabela de produse, care sa pointeze spre campul id (unic) din tabela de subcategorii.

    Pentru intrebarea ta solutia ar putea fi crearea unei tabele asociative intre produse si categorii, care sa contina campurile id_produs si id_subcategorie, si care sa permita valori duplicate dupa id_produs. Astfel, vei putea avea de exemplu inregistrarile (1, 3) si (1, 4) - ceea ce insemna ca produsul 1 se regaseste atat in subcategoria 3 cat si in subcategoria 4. Astfel, daca esti pe un produs faci un SELECT dupa id_produs si aflii lista subcategoriilor din care face parte produsul respectiv (sa zicem ca vrei sa afisezi lista subcategoriilor in pagina produsului). Invers, daca faci un SELECT dupa id_subcategorie poti afla lista tuturor produselor care fac parte din acea subcategorie. Ar fi bine sa creezi cate un index pentru fiecare din cele doua campuri, pentru a optimiza cautarile descrise.

    Modalitatea descrisa anterior nu te va impiedica sa ai url pe pagina de produs de forma dorita www site ro/idprodus/alune.html

    Succes!

  3. #3
    Avatarul lui Dever
    Dever este deconectat Ambasador
    Reputatie:
    33
    Data înscrierii
    28th July 2006
    Locaţie
    UK
    Vârstă
    43
    Posturi
    378
    Putere Rep
    33


    Implicit

    Am facut un desen ca tot ma plictiseam, e mai usor sa le vezi asa:
    cat_subcat_produse.gif
    Dever's Blog - Atentie! dau cu parerea.

  4. #4
    Avatarul lui evolution
    evolution este deconectat Membru SeoPedia
    Reputatie:
    37
    Data înscrierii
    29th October 2006
    Locaţie
    Bucuresti
    Posturi
    997
    Putere Rep
    37


    Implicit

    Asta ar insemna ca atunci cand adaug un produs sa inserez date si in tabelul relational .

    Din cate inteleg pastrez toate aceste 4 tabele , iar tabelul relational il folosesc doar atunci cand afisez produsele din subcategorii.


    Mi-ar fi mult mai usor sa pun cele 2 subcategorii doar in tabela cu produse (nu pun un produs in mai mult de 2 subcategorii in siteul la care lucrez ).

    Voi aprofunda maine cu creionul si hartia,acum e 2 noaptea.

    Multumesc!

  5. #5
    Avatarul lui c_n_m
    c_n_m este deconectat Ambasador
    Reputatie:
    37
    Data înscrierii
    25th February 2006
    Locaţie
    București / Ilfov
    Vârstă
    52
    Posturi
    622
    Putere Rep
    37


    Implicit

    Dever a ilustrat foarte bine situatia in desenul sau. Dar daca un produs nu poate face parte din mai mult de doua subcategorii, si nici o subcategorie nu poate face parte din mai multe categorii, atunci este suficient sa ai in tabela de produse doua campuri de subcategorii. Doar ca atunci cand vei cauta produsele dintr-o subcategorie data va trebui sa faci selectia conditionata de aparitia subcategoriei cautate in campul 1 de subcategorie SAU in campul 2 de subcategorie.

  6. #6
    Avatarul lui Zait Victor
    Zait Victor este deconectat Membru SeoPedia
    Reputatie:
    29
    Data înscrierii
    24th February 2009
    Locaţie
    web
    Vârstă
    35
    Posturi
    50
    Putere Rep
    29


    Implicit

    sau mai simplu, in tabelul cu produse sa permiti valori duplicate pentru id, mai exact, vei avea doua inregistrari pentru un produs cu acelasi id , dar cu campurile cat, si subcat diferite ...

  7. #7
    Avatarul lui B3aT
    B3aT este deconectat Membru SeoPedia
    Reputatie:
    31
    Data înscrierii
    28th August 2007
    Locaţie
    Berceni
    Posturi
    185
    Putere Rep
    31


    Implicit

    Vezi legaturi Many to Many la relationarea tabelelor.

    Daca nu ai categoria in link merge sa ai doar un singur link, dar pe pagina produsul trebuie sa afisezi doar prima sau toate catgoriile din care face parte, ceea ce poate fi derutant pentru un vizitator.
    public site HiPower = new distributie acumulatori camere digitale;

Informații subiect

Utilizatori care navighează în acest subiect

Momentan este/sunt 1 utilizator(i) care navighează în acest subiect. (0 membrii și 1 vizitatori)

Thread-uri Similare

  1. CSS cum sa fac sa apara footerul jos (cod atasat) ?
    De evolution în forumul Client side
    Răspunsuri: 4
    Ultimul Post: 13th March 2009, 14:58
  2. Ce fac sa-mi apara asa !
    De vierme în forumul Discutii generale privind optimizarea si motoarele de cautare
    Răspunsuri: 6
    Ultimul Post: 5th January 2008, 02:17
  3. Subcategorii pentru Comert electronic, e-Commerce
    De Cristian Mezei în forumul Discutii administrative
    Răspunsuri: 1
    Ultimul Post: 3rd October 2007, 15:31
  4. SEO produs software
    De ddines în forumul Locuri de munca
    Răspunsuri: 4
    Ultimul Post: 30th March 2007, 13:34
  5. Produs Testat - Seo Elite
    De vladimir în forumul SEO Soft
    Răspunsuri: 18
    Ultimul Post: 10th December 2006, 18:50

Permisiuni postare

  • Nu puteţi posta subiecte noi.
  • Nu puteţi răspunde la subiecte
  • Nu puteţi adăuga ataşamente
  • Nu puteţi modifica posturile proprii
  •