Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MYSQL]Projektowanie bazy
Forum PHP.pl > Forum > Przedszkole
redelek
Hej,

Grafika i wygląd mam już prawie gotowy pora zabrać się za bazy danych i tu mam problem.
Jako , że nie pracuję zawodowo jako programista proszę o pomoc i wyrozumiałość.

Założenia aplikacji.

--Users--
1. Dostępna tylko na login i hasło
2. Możliwość edycji swoich danych ( adres e-mail, hasło, imię i nazwisko )
3. Wysyłanie krótkich zapytań do użytkownika danego prezentu ( poprzez e-mail funkcja mail() z php )

- Osoba która miała rezerwację dostanie informację na e-mail, że ten użytkownik wycofał się z prezentu
--Prezenty--
1. Możliwość dodawania swoich prezentów ( widać je u siebie w zakładce i w panelu głównym jeśli nie jest zarezerwowany )
2. Możliwość wycofywania prezentów ( dodałem prezent ktoś go zarezerwował, ale ja rezygnuję i mam taką możliwość - rezerwujący dostanie e-mail z informację)
3. możliwość rezerwacji prezentów ( po zarezerwowaniu widzi tylko ten użytkownik który to zrobił)
4. Możliwość oglądania szczegółów dotyczących prezentów ( wszyscy mogą oglądać szczegóły jeśli jest prezent nie zarezerwowany - po rezerwacji tylko dany użytkownik go widzi i może oglądać szczegóły )
5. Możliwość dodawani linków i mini fotek ( każdy użytkownik może dodać link do strony z prezentem lub zamieścić jego miniaturkę max 100k, w polu szczegóły może opisać co to jest gdzie to ma zastosowanie i takie tam)
6. Możliwość usuwania zrealizowanych prezentów ( po zrealizowaniu można usunąć prezent oczywiście tylko ten użytkownik który go rezerwował i zrealizował )
7. Możliwość rezygnacji z rezerwacji ( można się rozmyślić i odwołać rezerwację wtedy prezent wraca do głównego koszyka )
8. questionmark.gif?

-- Admin ---
1. Widzi wszystko i wszystkich prezenty ( kto zarezerwował, jakie są wolne i inne takie )
2. Możliwość przypominania haseł ( czyli ich resetowanie - wysłanie na e-mail użytkownika )
3. Możliwość wysłania upomnienia o jakiś nieprawidłowościach
4. możliwość blokady konta użytkownika
5. questionmark.gif?
Takie mam skromne założenia. Pewnie połowę z nich nie uda mi się zrealizować z powodu braku wiedzy, ale uważam, że trzeba próbować.

Wydaje mi się, że bay powinny wyglądać tak
  1. #---------------------------
  2. #-- WYBIERAMY BAZĘ----------
  3. #---------------------------
  4. USE `prezentownik`;
  5.  
  6. #---------------------------
  7. #-- BAZA PREZENTOW----------
  8. #---------------------------
  9. CREATE TABLE `pre_prezenty` (
  10. `id_prezentu` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT,
  11. `id_uzytkownika` tinyint(3) UNSIGNED DEFAULT NULL,
  12. `id_rezerwujacego` tinyint(3) UNSIGNED DEFAULT NULL,
  13. `skr_prezentu` varchar(255) collate utf8_polish_ci DEFAULT NULL,
  14. `koszt` int(10) UNSIGNED DEFAULT NULL,
  15. `szczegoly` text collate utf8_polish_ci,
  16. `link` varchar(255) collate utf8_polish_ci DEFAULT NULL,
  17. `mini_fotka` blob,
  18. `rezerwacja` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  19. `realizacja` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  20. `dt_dodania` date DEFAULT NULL,
  21. `dt_realizacji` date DEFAULT NULL,
  22. PRIMARY KEY (`id_prezentu`),
  23. UNIQUE KEY `id_prezentu` (`id_prezentu`)
  24. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=0 ;
  25.  
  26.  
  27. #---------------------------
  28. #---BAZA UZYTKOWNIKOW-------
  29. #---------------------------
  30. CREATE TABLE `pre_users` (
  31. `id_uzytkownika` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT,
  32. `imie` varchar(20) collate utf8_polish_ci DEFAULT NULL,
  33. `nazwisko` varchar(20) collate utf8_polish_ci DEFAULT NULL,
  34. `email` varchar(30) collate utf8_polish_ci DEFAULT NULL,
  35. `uzytkownik` varchar(8) collate utf8_polish_ci DEFAULT NULL,
  36. `haslo` varchar(32) collate utf8_polish_ci DEFAULT NULL,
  37. `kod_rejestracyjny` varchar(25) collate utf8_polish_ci DEFAULT NULL,
  38. `dt_rejestracji` datetime DEFAULT NULL,
  39. `dt_logowania` datetime DEFAULT NULL,
  40. `blokada` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  41. `uprawnienia` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  42. PRIMARY KEY (`id_uzytkownika`),
  43. UNIQUE KEY `id_uzytkownika` (`id_uzytkownika`)
  44. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=0 ;


Może zobaczycie to czego mi brakuje , może więcej baz ? Nie wiem nie wiem. Powodem takiej kombinacji jest brak pomysłów na prezenty dla całej rodziny. Rodzinka już ma ponad 30 osób. Wiadomo dziadkowie odpadną, ale może może się dadzą namówić smile.gif
Dzięki temu pomysłowi każdy w wolnej chwili będzie mógł dopisać prezent, a my wiedząc o zbliżających się imieninach ( urodzinach ) nie będziemy dzwonić i pytać się co i jak tylko zajrzymy tutaj.

Jak oceniacie czy tabele spełnią wszystkie moje warunki czy mam dodać jakieś pola lub coś pozmieniać.

Będę bardzo zobowiązany za informację

Pozdrawiam
Redelek
erix
Cytat
Może zobaczycie to czego mi brakuje , może więcej baz ?

Tabel, a nie baz. winksmiley.jpg

Cytat
Jak oceniacie czy tabele spełnią wszystkie moje warunki czy mam dodać jakieś pola lub coś pozmieniać.

Polskie nazwy kolumn/zmiennych, to herezja. Poza tym, nie opisują nieraz u Ciebie danych, jakie mają się tam znajdować. Np. skr_prezentu? Spółdzielnia Kółek Rolniczych prezentu? tongue.gif Po typie danych domyślam się, że to jest skrót opisu, ale z nazwy za żadne skarby nie da się dowiedzieć, o co chodzi.

Poza tym, nie masz żadnych indeksów w bazie prócz klucza głównego.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.