Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem relacja wiele do wielu czy to jest mozliwe?, tabela laczaca dane z 4 tabel czy to jest mozliwe
plcm
post
Post #1





Grupa: Zarejestrowani
Postów: 44
Pomógł: 0
Dołączył: 7.12.2010

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


Witam o to przyklad powiedzmy ze jestesmy na stronie jakiegos gabinetu lekarskiego i jestesmy tam zarejestrowani
na stronie mozna sie zapisac do lekarza do wyboru jest kilku lekarzy i przy kazdym z nich jest do wyboru dzien i godzina ktora nas interesuje
zeby nie komplikowac wszyscy z nich obsluguja w tych samych godzinach

mamy cztery tabele

1) user
- id_user
- imie_user
- nazwisko_user

2) lekarz
- id_lekarz
- imie_lekarz
- nazwisko_lekarz

3) godzina
- id_godzina
- godzina

4) dzien
- id_dzien
- dzien

przykladowe dane w tabelach

1) user

1 - Zbychu - Szybki
2 - Roman - Wolny
3 - Stanislaw - Dziw

2) lekarz

1 - doktora - doka
2 - doktorb - dokb
3 - doktorc - dokc

3) godzina

1 - 8:00
2 - 10:00
3 - 17:00

4) dzien

1 - 22.02.2010
2 - 23.02.2010
3 - 24.02.2010

chcielibysmy po zapisaniu do lekarza moc spr do ktorego lekarza sie zapisalismy na jaki dzien i na ktora godzine

czyli wydaje mi sie ze teraz tabela laczaca powinna wygladac tak

user2lek2dzien2godz

id_user2lek2dzien2godz
id_user
id_lekarz
id_godzina
id_dzien

pytania

1. jak stworzyc kod php ktory bedzie wybieral dane z 3 baz i tworzyl tabele laczaca?
2. jak kod stworzyc aby dane z bazy lekarz byly wyswietlane w formie linku po ktorego nacisnieciu pojawia sie dzien do wyboru i godziny przyjec

czyli mialby sie wyswietlic rekord z tabeli np. doktora - doka ---click---> 22.02.2010 8:00
10:00
17:00 ---click--> zostales zapisany na wizyte .....
23.02.2010 8:00
10:00
3.jak ograniczyc liczbe rekordow w tabeli w tabeli aby na dana godzine nie moglo sie zapisac wiecej niz np 5


prosilbym o pomoc

Ten post edytował plcm 12.04.2012, 16:41:16
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sebastian.rozmus
post
Post #2





Grupa: Zarejestrowani
Postów: 48
Pomógł: 12
Dołączył: 7.03.2012

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


Tabela z dniami i godzinami była po to żeby wiedzieć kiedy lekarz przyjmuje więc to chyba kluczowa kwestia tego problemu (IMG:style_emoticons/default/wink.gif)

Można to zrobić tak, że tabela rezerwacje ma dane: id, lekarz, pacjent1, pacjent2, ... , pacjent5, dzien, godzina. Wolne terminy to te które nie istnieją w rezerwacjach. Rekord naszej wizyty:
  1. WHERE `pacjent1`={nasze_id} OR `pacjent2`={nasze_id}


Przy rezerwacji sprawdzamy czy choćby jedeno pole( z pacjent1...pacjent5) jest wolne.
Go to the top of the page
+Quote Post
krowal
post
Post #3





Grupa: Zarejestrowani
Postów: 561
Pomógł: 72
Dołączył: 15.11.2006

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


Cytat(sebastian.rozmus @ 13.04.2012, 00:58:17 ) *
Tabela z dniami i godzinami była po to żeby wiedzieć kiedy lekarz przyjmuje więc to chyba kluczowa kwestia tego problemu (IMG:style_emoticons/default/wink.gif)

Można to zrobić tak, że tabela rezerwacje ma dane: id, lekarz, pacjent1, pacjent2, ... , pacjent5, dzien, godzina. Wolne terminy to te które nie istnieją w rezerwacjach. Rekord naszej wizyty:
  1. WHERE `pacjent1`={nasze_id} OR `pacjent2`={nasze_id}


Przy rezerwacji sprawdzamy czy choćby jedeno pole( z pacjent1...pacjent5) jest wolne.

Nie znam założeń tego systemu, ale wydaje się co najmniej dziwnym umawianie pięciu pacjentów na tą samą godzinę, chociaż w naszym kraju wszystko jest możliwe, szczególnie w placówkach służby zdrowia (IMG:style_emoticons/default/wink.gif) Piszecie jakiś projekt na studia czy co ? Mam nadzieję że nie będzie to aplikacja, którą chcecie komuś sprzedać (IMG:style_emoticons/default/wink.gif)
Jeśli lekarze mają bardzo zróżnicowane godziny przyjęć, np nie powtarzają się one w tygodniu czy miesiącu to taka tabela z godzinami przyjęć wydaje się mieć sens. Trzeba by jednak uzupełniać ją na kilka tygodni (miesięcy?) naprzód tak żeby pacjent mógł wiedzieć kiedy może się umówić do danego lekarza. Jeśli są to stali pracownicy to zapewne mają ustalone stałe godziny pracy, wtedy wystarczyła by tabela w której określałoby się zakresy pracy danego lekarza powiedzmy na miesiąc z góry (jeśli godziny dyżurów zmieniają się cyklicznie) lub na stałe dla każdego dnia tygodnia jeśli lekarz ma stałe godziny przyjęć każdego dnia. W każdym wypadku nie wiązałbym tych tabel [wizyta] <> [czas_przyjec] żadnymi relacjami a dane z tabeli zawierającej czasy przyjęć lekarzy wykorzystywał jedynie w celach "informacyjno walidacyjnych" - podczas sprawdzania kiedy pacjent może się zapisać do wybranego lekarza.
Go to the top of the page
+Quote Post

Posty w temacie


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: 6.10.2025 - 23:54