![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 32 Pomógł: 0 Dołączył: 11.07.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
tworzę serwis z opiniami produktów. Robię to czysto dla nauki programowania i sql dlatego jako początkujący mam problem z relacjami w bazie. Otóż serwis według moich założeń ma pozwalać na kategoryzowanie produktów ich opinię przeż użytkownika raz dziennie oraz dodawanie produktów. Dlatego stworzyłem sobie taką oto struktórę bazy: <soon> tabela kategorii zawiera implementację drzewa nesed set. Mój problem natomiast jest taki czy połączone relacje są prawidłowe oraz jaką relacją połączyć użytkowników? Głowię się również jak rozwiązać problem jednorazowego opiniowania czy dodać tabelę z adresami ip czy możę lepiej będzie zrobić to na plikach? Ten post edytował mattix19 10.07.2012, 17:07:02 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Zakładam, że chcesz pozwolić na opiniowanie również niezalogowanym, tak? Na pewno nie żadne pliki (IMG:style_emoticons/default/smile.gif) Moim zdaniem najlepiej zrobić tak: w tabeli OPINIONS nie dodawać żadnego pola informującego o autorze opinii. Dodać tabelę zawierającą opinion_id i user_id (zalogowani autorzy opinii) oraz tabelę zawierającą ip oraz opinion_id (autorzy niezalogowani). Masz wtedy piękny schemat bazy danych, jednak mechanizmy dot. blokady opiniowania jednego produktu X razy musiałbyś zaimplementować w systemie. Wszelkie dane będziesz miał, najważniejsza tu będzie data opinii. Masz wtedy taką zaletę, że w łatwy sposób możesz ustalać konkretne wymogi, np. że jeden użytkownik może opiniować jeden produkt raz na X dni, raz na Y godzin, ogólnie tylko raz lub np. bez ograniczeń itd.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 26.09.2025 - 11:56 |