Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Opis produktu w bazie ze znakami html
herbatniczek
post 5.11.2004, 20:16:55
Post #1





Grupa: Zarejestrowani
Postów: 84
Pomógł: 0
Dołączył: 12.10.2004

Ostrzeżenie: (0%)
-----


Witam.
Mam różne produkty z różną ilością cech char. Chce to jakoś sensownie umieścić w bazie. Mam taki pomysł, żeby np przy umieszczeniu nowego opisu w bazie używać takiego znaku :: to oznaczałoby przejscie do nastepnej cechy. czyli np przekątna - 17'' :: czas reakcji - 16ms :: itd. Teraz explodem to wszystko do tablicy, i na ekran kazda cecha. Jak Wy sobie poradziliście z opisem produktów? czy uwazacie, ze wpisywanie danych w takim formacie jest sensownym rozwiazaniem? jesli tak, to co powiecie na <b>przekatna</b> - 17'' :: itd...
zeby nazwa cechy byla wytluszczona. jesli to tez ma sens, to jakiej funkcji uzyc, zeby <b> zadzialalo jak znacznik a nie tekst, przy wypisywaniu na ekranie?

THX
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 11)
Parti
post 5.11.2004, 20:35:27
Post #2





Grupa: Zarejestrowani
Postów: 116
Pomógł: 0
Dołączył: 22.07.2004

Ostrzeżenie: (0%)
-----


Cytat(herbatniczek @ 2004-11-05 21:16:55)
czy uwazacie, ze wpisywanie danych w takim formacie jest sensownym rozwiazaniem?

Nie. Najlepiej zrobić tabele z kolumnami dla każdej możliwej cechy produktu. Raz będziesz chciał wyświetlić przekątną w bold, a raz italik. Innym razem możesz chcieć posortować wg. przekątnej albo wyświetlić tylko te produkty, które mają czas reakcji większy od 17ms.
Go to the top of the page
+Quote Post
herbatniczek
post 5.11.2004, 21:19:50
Post #3





Grupa: Zarejestrowani
Postów: 84
Pomógł: 0
Dołączył: 12.10.2004

Ostrzeżenie: (0%)
-----


dobrze, więc powiem może dokładniej co już mam:

jest drzewo kategorii i podkategorii. i podkategoriami - dlatego drzewo, żebym mógł mieć nieskończoną ilość tych kat i podkategorii. moje drzewo nadaje czy to kategorii, czy podkategorii unikalne ID. czyli

.................1
............2........3
..........4..5

i teraz obok id produktu w bazie (jak rozumiem sugerujesz, żeby każdy produkt miał oddzielną tabelę), mialbym id tej podkategorii, czy tez kategorii.
Teraz moje kategorie wyglądają tak, ze mam
przodek - id przodka
nazwa
potomek - true/false
katID.
I co dalej proponujesz? jeśli oddzielne pola - cechy to i oddzielne tabele dla monitorów, drukarek itd, więc nie mając jednej tabeli produktów chyba musze dodac nazwe tabeli produktu do tabeli kategorii?

Ten post edytował herbatniczek 5.11.2004, 21:28:25
Go to the top of the page
+Quote Post
ActivePlayer
post 5.11.2004, 23:39:52
Post #4





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

Ostrzeżenie: (0%)
-----


Partiemu chodzilo chyba bardziej o to zeby tabela z danymi o produktach zawierała tyle pól, ile maksymalnie moze posiadac produkt np.

Id nazwa .... cecha1 cecha2 itd.

I potem jak masz cos wpisane w danym polu to to wyswietlasz a jak nie to pomijasz... pomaga to w tym ze mozesz potem sortowac np wg. cecha1 itp... proponuje nazewnictwo takie ze pola w nazwie są nazwą cechy a wartosc tym co ma byc w zalozeniu Twoim po myslniku... potem mozesz w kodzie php w roznych miejscach strony roznie pokazywac dane...
Go to the top of the page
+Quote Post
kociou1
post 6.11.2004, 00:00:39
Post #5





Grupa: Zarejestrowani
Postów: 78
Pomógł: 0
Dołączył: 13.02.2004
Skąd: warszawa

Ostrzeżenie: (0%)
-----


Hmmm...
A może tak:

wpis w bazie: <i>NazwaCechy1</i>::Cecha1||<b>NazwaCechy2</b>::Cecha2||....

odczyt z bazy i explode:
  1. <?php
  2.  
  3. $cechy=@explode('||', $dane_z_bazy);
  4.  
  5. ?>

W efekcie dostajemy tablicę:
  1. <?php
  2.  
  3. $cechy[]='<i>NazwaCechy1</i>::Cecha1';
  4. $cechy[]='||<b>NazwaCechy2</b>::Cecha2';
  5.  
  6. ?>

i dalej już chyba wiadomo o co chodzi smile.gif
Go to the top of the page
+Quote Post
zYm3N
post 6.11.2004, 09:00:22
Post #6





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 29.08.2004
Skąd: POLAND

Ostrzeżenie: (0%)
-----


w polu text bazy:

<nazwa>xx</nazwa>
<wielkosc>532</wielkosc>
<koszt>523</koszt>

itp. idt. Podobno dla dużej ilości danych wolne, ale ja sprawdziłem to w jednym ze swoich skryptów i działa wyśmienicie :-)

Gdzieś miałem kod do rozwalania ciągu na tag + zawartość, ale ni mogę szybko znaleźć :|
Go to the top of the page
+Quote Post
ActivePlayer
post 6.11.2004, 10:55:30
Post #7





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

Ostrzeżenie: (0%)
-----


gorzej jak potem sobie chcesz sobie posortowac wg jakiejs cechy
Go to the top of the page
+Quote Post
zYm3N
post 6.11.2004, 13:20:56
Post #8





Grupa: Zarejestrowani
Postów: 49
Pomógł: 0
Dołączył: 29.08.2004
Skąd: POLAND

Ostrzeżenie: (0%)
-----


tak. Masz rację. jednakże myślę, że dla stron z niewielką ilościa odwiedzin dziennie wystarczy napisanie odpowiedniego interfejsu i wszystko powinno smigać sprawnie.

pzodr.
Go to the top of the page
+Quote Post
lisu
post 6.11.2004, 14:25:06
Post #9





Grupa: Zarejestrowani
Postów: 100
Pomógł: 0
Dołączył: 25.01.2003
Skąd: mazury, wawa

Ostrzeżenie: (0%)
-----


A gdyby zrobic 3 tabele:

produkty:
id_prod|nazwa_produktu|id_kategorii|cena1|cena2|ile_w_magazynie|itpitd

cechy
id_cechy|nazwa_cechy

wlasciwosci
id_wl|id_cechy|id_prod|wartosc

I wtedy np masz w tabeli prodykty monitor.
Dodajesz mu ceche 'przekatna', a we wlasciwosci dajesz '17ms'.
Tak mozesz dodac nieskonczenie wiele (bez przesady) cech oraz zmieniac jednostki.
Warto przyporzadkowac cechy odpowiedzniej grupie produktow (dyski twarde nie maja przekatnych monitora).


--------------------
--
Carpe Diem
Go to the top of the page
+Quote Post
komar07
post 6.11.2004, 20:28:15
Post #10





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 17.06.2004
Skąd: ke ?

Ostrzeżenie: (0%)
-----


Sprawdz gotowe rozwiązania http://oscommerce.com

a jak juz tak bardzo upierasz sie przy cechach w jednym polu to poprostu stworz tablice cech jakie ma produkt zapisujac do bazy uzyj serialize() wyciagajac unserialize() i obrabiaj do woli tresc.
Go to the top of the page
+Quote Post
herbatniczek
post 7.11.2004, 01:52:04
Post #11





Grupa: Zarejestrowani
Postów: 84
Pomógł: 0
Dołączył: 12.10.2004

Ostrzeżenie: (0%)
-----


dzięki za posty. narazie chce mieć połączenie tego wszystkiego o czym mówiliście. czyli możliwość sortowania i i nie bawienie sie w 20 tablic dla różnych produktów. czyli będzie opis, i pola, po których będzie można sortować - wspólne dla all produktów takie jak cena, nazwa producemt. przekątna, czas reakcji, - to moge zawrzeć przecież w moim drzewku kategorii. kto sortowałby po przekątnej ;-)
Go to the top of the page
+Quote Post
rogrog
post 7.11.2004, 08:57:57
Post #12





Grupa: Zarejestrowani
Postów: 602
Pomógł: 1
Dołączył: 3.04.2004
Skąd: Trójmiasto (Gdańsk)

Ostrzeżenie: (0%)
-----


reguły normalizacji baz danych mówią o czymś takim że jedna kolumna w tabeli powinna przechowywać tylko jedną informację. Zgodnie z tymi regułami Twoja baza powinna wyglądać mniej więcej tak jak podał Lisu. To nie jest 20 tabel, tylko 3. I daje Ci to ogromne możliwości. Tak się robi.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 06:30