Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Problem z rozdzieleniem rodzin w aplikacji
redelek
post
Post #1





Grupa: Zarejestrowani
Postów: 658
Pomógł: 37
Dołączył: 4.06.2005
Skąd: Wawa

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


Witam wszystkich serdecznie,

Jako , że zawodowcem nie jestem to piszę do Was w sprawie porady .
Napisałem aplikację do której mogą się logować wszyscy z mojej rodziny. Wszystko działa pięknie, ale urodziły się dwa pomysły z którymi nie mogę sobie poradzić.
Zadaniem aplikacji jest zamawianie upominków dla siebie na różne okazje ( żeby każdy dostał to co chce, a nie to co potem jest nieprzydatne ). Jak to działa.

Osoba loguje się na stronę i umieszcza wpis dotyczący chęci otrzymania prezentu na jakąś okazję. Inna osoba widząc to w głównym koszu rezerwuje to sobie.
Osoba wystawiająca prezent widzi że ktoś go zarezerwował, ale nie wie kto, może jedynie wysłać mu komunikat z prośbą o zwolnienie prezentu bo np. już taki sobie kupiła.
Powstały wa problemy.

1. jak rozdzielić rodziny

Chodzi o to żeby rodzina, na wzajem nie widziały swoich prezentów tylko dopiero po zaproszeniu.

Wymyśliłem więc by dodać pole kod_rodziny w tabeli użytkownicy i prezenty. Kod rodziny składał by się z 6 cyfr i był by unikalny.
W polu rodzina można sobie dopisywać kody, tak żeby być widocznym w danej rodzinie przykład 121314;161718;212223.
Problem w tym jak sprawdzić czy i do której rodziny dana osoba należy i które prezenty po zalogowaniu pokazać.
Czy zapisać te dane w sesji jako jakąś tablicę czy, sprawdzać na bieżąco( jak to można zrobić, jeśli w polu baz danych są średniki ). Może dodać jakąś tabelę z kodami rodzin ?, ale jak przypisać kilku użytkowników do jednej rodziny?
No mam problem , bo pomysł fajny, ale realizacja jak dla amatora trudna.
Macie może jakiś pomysł?

2. prezenty składkowe
Tu kolejny dylemat. Nieraz osoby dodają prezent powyżej 100zł i użytkownicy składają się na niego. Najlepszym rozwiązaniem było by by dopisać imię lub login do zarezerwowanego prezentu np ania;piotrek;rafał. Loginy są unikalne więc nie będzie problemu że jest 2 Piotrków. Problem w tym jak znowu wyszukać i czy zrobić kolejną tabelę do prezentów wspólnych.

Temat troszkę zakręcony, ale może ktoś zrozumie i będzie potrafił mnie naprowadzić . Tak wyglądają obecne tabele
  1. CREATE TABLE IF NOT EXISTS `pre_prezenty` (
  2. `id_prezentu` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT,
  3. `id_uzytkownika` tinyint(3) DEFAULT '0',
  4. `id_rezerwujacego` tinyint(3) DEFAULT '0',
  5. `skr_prezentu` varchar(255) collate utf8_polish_ci DEFAULT NULL,
  6. `koszt` int(10) UNSIGNED DEFAULT NULL,
  7. `szczegoly` text collate utf8_polish_ci,
  8. `link` varchar(255) collate utf8_polish_ci DEFAULT NULL,
  9. `mini_fotka` varchar(255) collate utf8_polish_ci DEFAULT 'foto_dir/noimage.png',
  10. `rezerwacja` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  11. `realizacja` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  12. `typ_prezentu` varchar(25) collate utf8_polish_ci DEFAULT 'prezent',
  13. `dt_dodania` date DEFAULT NULL,
  14. `dt_realizacji` date DEFAULT '0000-00-00',
  15. PRIMARY KEY (`id_prezentu`),
  16. UNIQUE KEY `id_prezentu` (`id_prezentu`)
  17. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=65 ;

  1. CREATE TABLE IF NOT EXISTS `pre_users` (
  2. `id_uzytkownika` tinyint(3) UNSIGNED NOT NULL AUTO_INCREMENT,
  3. `imie` varchar(20) collate utf8_polish_ci DEFAULT NULL,
  4. `nazwisko` varchar(20) collate utf8_polish_ci DEFAULT NULL,
  5. `email` varchar(50) collate utf8_polish_ci DEFAULT NULL,
  6. `uzytkownik` varchar(32) collate utf8_polish_ci DEFAULT NULL,
  7. `haslo` varchar(32) collate utf8_polish_ci DEFAULT NULL,
  8. `dt_rejestracji` datetime DEFAULT NULL,
  9. `dt_logowania` datetime DEFAULT NULL,
  10. `blokada` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  11. `uprawnienia` varchar(1) collate utf8_polish_ci DEFAULT NULL,
  12. PRIMARY KEY (`id_uzytkownika`),
  13. UNIQUE KEY `id_uzytkownika` (`id_uzytkownika`)
  14. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=13 ;


Dzięki

Ten post edytował redelek 15.04.2010, 12:10:32


--------------------
Pozdrawiam
Piotrek R
Go to the top of the page
+Quote Post

Posty w temacie


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 Aktualny czas: 21.08.2025 - 12:40