Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zarządzanie zdjęciami w bazie - kilka pytań
nowy_pehapowiec
post
Post #1





Grupa: Zarejestrowani
Postów: 220
Pomógł: 0
Dołączył: 24.08.2009

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


Cześć

Jak najlepiej zarządzać zdjęciami w bazie danych? Powiedzmy, że chodzi o sklep, w którym są produkty poukładane w różnych kategoriach. Każdy produkt może mieć zdjęcia (albo ulotki pdf). Oczywiście produkt ma też opis, nazwę. Jak zaprojektować taką bazę w której każdy produkt może mieć różną liczbę zdjęć? Wymyśliłem sobie takie proste rozwiązanie

tabela zdjecia
PRODUCT_ID | FOTO_NAME

i jeśli produkt ma kilka zdjęć to kilka razy pojawi się jego id w tej tabeli ale różne będą nazwy zdjęć. Jest jeszcze sprawa kolejności zdjęć. Jedyne na co wpadłem to dodatkowa kolumna ORDER. Pobierałbym nazwę zdjęć dla danego PRODUCT_ID i sortował według kolumny ORDER. Ale może macie jakiś lepszy pomysł?

I na koniec, czy zdjęcia trzymać w folderze danego produktu, czy jakoś inaczej to poukładać? Teraz mam folder BASE/XXXX i każdy produkt ma swój własny folder (taki jak PRODUCT_ID). Tylko, że jeśli produkty mają takie samo zdjęcie to musiałbym je mieć powtórzone w każdym folderze - spory minus.

Jak to rozplanować, żeby było lepiej.

pozdro

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
vokiel
post
Post #2





Grupa: Zarejestrowani
Postów: 2 592
Pomógł: 445
Dołączył: 12.03.2007

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


Tylko 3? (IMG:style_emoticons/default/winksmiley.jpg)

1.

Tabela kategorii (id, nazwa, etc)
W produkcie gdzie masz pole kategorii możesz wpisać je po przecinku, na zadzie tagów, tak aby produkt mógł należeć do wielu kategorii na raz

Ewentualnie standardową relacje wiele-do-wielu poprzez trzecią tabelę:
Kategorie (id, nazwa, etc)
Produkt (id, nazwa, etc)
Kategorie-produkty (id_kategorii, id_produktu) -> klucz na (id_kategorii, id_produktu)

2. INSERT, DELETE, EDIT (IMG:style_emoticons/default/winksmiley.jpg)
Takie standardowe raczej, większość operacji na danych odbywa się poprzez takie funkcjonalności. Oczywiście dochodzi wyszukiwanie (IMG:style_emoticons/default/winksmiley.jpg)

Funkcjonalności powinno być tyle ile trzeba żeby było.

Dodanie/edycja - IMHO - powinno odbywać się na tym samym formularzu - te same opcje, te same funkcjonalności.

W tym przypadku widzę takie, główne moduły: produkt (przeglądanie, dodawanie, usuwanie, edycja), biblioteka mediów (przeglądanie, dodawanie, usuwanie, edycja). Dodatkowo można zrobić mniejsze: producenci, grupy, tagi.

Przykładowo wybór producenta odbywa się na stronie dodawania/edycji produktu. Masz np listę rozwijalną producentów, i jeśli taki się na niej nie znajduje, to pole obok w które można go dodać. Tak, żeby dodanie produktu mogło się odbyć za jednym razem.

3. (choć numerku nie było (IMG:style_emoticons/default/winksmiley.jpg) )
Bazę przeglądam programem SQLyog (IMG:style_emoticons/default/winksmiley.jpg)
A w panelu, w przypadku podziału na kategorie, drzewko kategorii z jednej strony, a na głównym ekranie przeglądania możliwość sortowania po każdej kolumnie, do tego stronicowanie wyników z możliwością wyboru ilości na stronie (to wszystko dzięki lasie nospora - pager)

Można, na pewno. Z każdym projektem przychodzą do głowy lepsze rozwiązania. Kiedyś myślałem, że jak się już napisze tego kodu, to później się już tylko wybiera gotowe moduły i składa w całość. Jednak nie do końca, tym bardziej jak się pracuje na aplikacjach, które się napisze. Z czasem, w trakcie użytkowania przychodzą nowe pomysły, usprawnienia, nowe zapotrzebowania etc)

Odpozdrawiam (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post

Posty w temacie
- nowy_pehapowiec   zarządzanie zdjęciami w bazie - kilka pytań   14.09.2009, 12:03:33
- - vokiel   Tworzysz tabelę zdjęć: ID | NAZWA | URL | czy coko...   14.09.2009, 12:22:58
- - nowy_pehapowiec   vokiel no właśnie o czymś takim myślałem. 1 tabel...   15.09.2009, 09:25:33
- - fly474   Hej Widzę 2 rozwiązania: Umieszczenie plików dla ...   15.09.2009, 10:28:11
- - nowy_pehapowiec   Z doklejaniem nazw do plików wolę uważać, żeby nie...   15.09.2009, 15:54:13
- - vokiel   Odnośnie języka to najlepiej w oddzielnych katalog...   15.09.2009, 18:07:08
- - nowy_pehapowiec   vokiel bardzo dziękuję za wyczerpującą odpowiedź. ...   16.09.2009, 09:33:27
- - vokiel   Ad. 1 Najlepiej to sprawdzić, porównać sobie czas ...   16.09.2009, 09:51:14
- - nowy_pehapowiec   vokiel wiem, że jest późno i mogę bredzić ale czy ...   17.09.2009, 23:17:23
- - vokiel   Uciekające kurczaki? Chyba nie, zresztą już nie pa...   18.09.2009, 09:19:59
- - nowy_pehapowiec   o właśnie o uciekających kurczakach myślałem 4 I...   18.09.2009, 12:36:44
- - vokiel   Grillowane udko - z chęcią mam parę browarków pod ...   18.09.2009, 21:03:23
- - nowy_pehapowiec   vokiel jeszcze 3 pytanka mam do ciebie, jeśli możn...   19.09.2009, 16:36:03
- - vokiel   Tylko 3? 1. Tabela kategorii (id, nazwa, etc) ...   20.09.2009, 11:27:04
- - nowy_pehapowiec   Sorry przepraszam za te pytania ale widzę, że znas...   20.09.2009, 15:05:13
- - vokiel   Widzę, że się rozkręciłeś Klucz główny zakładasz...   20.09.2009, 15:42:07
- - nowy_pehapowiec   No się rozkręciłem 1 Właśnie nie wiem jak założy...   20.09.2009, 18:20:21
- - vokiel   Ad. 1. [SQL] pobierz, plaintext DROP TABLE IF EXIS...   21.09.2009, 07:44:12
- - thek   Ja osobiście staram unikać myślnika z prostej przy...   21.09.2009, 10:58:44
- - nowy_pehapowiec   ad 1 już wiem ad 2 po namyśle zostaje przy swo...   21.09.2009, 12:23:27
- - vokiel   Ad. ad 3. Co do opisów produktów dodaj może sobie ...   21.09.2009, 13:21:15
- - nowy_pehapowiec   Ale one chyba nie zapewniają nawet podstawowych fu...   22.09.2009, 20:18:03


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

 



RSS Aktualny czas: 27.12.2025 - 12:41