Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Molim vase misljenje o DB koju sam kreirao za shoping cart

  • 3 odgovora
  • 3.142 pregleda

Najnovija ↓

Molim vase misljenje o DB koju sam kreirao za shoping cart 29.11.2007. u 15:55 · pre 230 meseci
izmenjeno 2 puta, poslednji put vladimirn 29.11.2007. u 17:15
  1. vladimirn29.11.2007. u 17:15zapis iz teksta poruke
  2. vladimirn29.11.2007. u 17:13zapis iz teksta poruke
#1
Svi predlozi, pohvale, kritike su dobrodosle :)

Table category:
_________________________________
|catID | catParent | catName
_________________________________
1----------0------ Knjizevnost
2----------1------ Strana knjizevnost
3----------2------ Romani
###########################

Table items:
____________________
itemID | itemName
____________________
1--------Peto dete
################

Table items_category
______________________
catID | itemID | itemType
______________________
3---------1---------2
##################



Table itemTypes
____________________
typeID | typeName
____________________
1--------Brajeve knjige
2--------CD izdanje
3--------Kaseta
################

elem, jedna knjiga moze spadati u vise kategorija i moze se pojavljivati u vise tipova- kao CD, kao kaseta ili knjiga...
Da li sam dobro napravio bazu? Kako bi vi to uradili?


Heh, upravo sam naleteo na problem.
npr ako kliknem na Knjizevnost hocu da mi se izlista sve sto je ispod te kategorije. Sama kategorija knjizevnost nema u sebi nijednu knjigu. Kategorija Strana knjizevnost , kao i kategorija DOmaca knjizevnost, takodje nemaju nijednu knjigu. Ali kategorija ROmani koja se nalazi ispod njih ima u sebi knjigu Peto Dete. Kako da izvucem path do njih da bih mogao da isprintam putanju: Knjizevnost->Strana Knjizevnost->Romani->Peto dete.
Drugi problem je da knjiga Peto dete moze biti i u sva tru tipa knjiga- Brajeve knjige, kasete i CD izdanja.
Treci problem :)
Kako da izlistam knjige koje se nalaze ispod kategorije Knjizevnost?

[Ovu poruku je menjao vladimirn dana 29.11.2007. u 16:37 GMT+1]

Kada zelim da ubacim knjigu, napravio sam sledece, odnosno ispisacu niz kakav ja dobijem i sa kojim ne znam bas sta da radim :0)
Code:

Array// pocetak niza
(
    [a] => addItem // akcija
    [type] => Array //ovo je niz sa tipovima knjiga
        (
            [0] => 1 //brajeve knjige
            [1] => 2 //kasete
            [2] => 3 //cd izdanja
        )

    [categorie] => Array //niz sa katgorijama
        (
            [0] => 1 //Knjizevnost
            [1] => 9 //Strana Knjizevnost
            [2] => 11 //Romani
        )

    [productName] => Peto dete //naslov knjige
    [productAutor] => Doris Lesing //ime autora
    [productDesc] => \"Peto dete\" je kratka, ali efektna opora knjiga, koja zaista pokazuje kako pisac može ozbiljno ući i u slojevitu društvenu tematiku. //opis knjige
    [Submit] => Add Product // submit dugme
)
Re: Molim vase misljenje o DB koju sam kreirao za shoping cart 30.11.2007. u 09:15 · pre 230 meseci #2
Što se tiče problema sa stablom, ima fora koja nije baš najkorektnija teorijski, ali u praksi odlično radi posao. Id kategorije neka bude neki dugačak string. U njemu onda možeš da pamtiš celu putanju. Znači, recimo :

1 književnost
11 strana književnost
111 strani romani
12 domaća književnost
itd.
Naravno, imaš ograničenje, prvo što se tiče broja potkategorija unutar jedne kategorije (ako ceniš da ih može biti više od 10 odvojićeš više cifara, ili ćeš koristiti slovne oznake, ili...), i drugo na temu dubine hijerarhije. Ali, falabogu, varchar polja mogu da budu baš široka, a i ti verovatno nećeš imati neznamkolko kategorija u stablu, tako da ćeš se lako izvući.
A filtriranje po kategoriji se svodi na
Code:
catId like '11%'
:) za stranu književnost recimo.

Drugi problem si, kolko vidim, rešio. Imaš tabelu items_category, i u njoj možeš za jednu "knjigu" da imaš više zapisa.

Treći problem je, valjda, isto što i prvi.
Potpis
it works on my machine
Re: Molim vase misljenje o DB koju sam kreirao za shoping cart 03.12.2007. u 08:32 · pre 230 meseci #3
Ja sam to radio tako što učitam sve kategorije u niz (samo dva polja: id, parent), pa iz aplikacije analiziram koji su sve id-ovi ispod zadatog (rekurzija ili petlja), sve to poređam u niz i spojim u string sa zarezima (CSV), i zatražim SELECT ... items, items_category ... WHERE CatID IN ($IdsNiz);
Potpis
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme