plcm
18.04.2012, 19:03:21
witam nie jestem pewny czy tak sie da zrobic
podam tylko przyklad dzialania takze moze wygladac bez sensu
tabela_1
id
imie
nazwisko
na swojej stronie wyswietlam rekordy z tej tabeli (imie, nazwisko)
Stefan Nowak (dodaj)
Michal Kowalski (dodaj)
.
.itd
obok kazdego rekordu jest opcja dodaj w formie linku po wcisnieciu wykonuje sie
funkcja $query= "CREATE TABLE IF NOT EXISTS tabela (id in.......)
i wlasnie chcialbym aby ta nowa tabela co jest tworzona byla o nazwie Stefan albo Michal zeby funckja poprostu sama pobierala sobie to imie
prosze o pomoc
thek
18.04.2012, 20:32:36
Ja bym zaczął od pytania: "Czy jest sens tworzenia osobnej tabeli dla każdego?" W wielu przypadkach jest to bowiem nieuzasadnione. Temat jednakże przenoszę do odpowiedniejszego działu...
plcm
18.04.2012, 20:46:47
wydaje mi sie ze w moim przypadku to konieczne chce stworzyc cos w stylu rezerwacji online tylko ze u mnie ma to wygaldac tak
jest np tabela lekarz pacjent i wizyta z tym ze chce miec opcje dodania lekarza i np mam liste lekarzy ktora sie odswieza po dodaniu nowego lekarza przy kazdym lekarzu jest opcja dodaj ktora tak jakby oznacza zapisz sie do lekarza takze po dodaniu nowego lekarza i nacisnieciu dodaj chcialbym aby automatycznie utworzyla sie tabela ktorej nazwa = imie lekarza i chcialbym wiedziec jak zapisac funkcje PHP co wpisac zamiast create table takze wydaje mi sie ze watek rowniez pasowal do PHP
thek
18.04.2012, 21:20:13
Pomyśl logicznie... Mam bazę lekarzy, załóżmy, że podstawowe rzeczy typu: id, imie, nazwisko. Teraz dorzucamy bazę pacjentów o podobnej lub identycznej strukturze podstawowej (dla ułatwienia dam tę samą). Dorzucamy jeszcze tabelę łączącą jedynie z id_lekarza, id_pacjenta i jakąś zmienną oznaczającą datę wizyty wraz z godziną data_godzina_wizyty. Powiedz mi czy trzeba coś więcej? Po co tworzyć pierdylion tabel? Powiedz mi jeszcze jak byś chciał potem joinować je, skoro każda ma inną nazwę? Niepotrzebne utrudnianie sobie życia. Ja bym jeszcze nawet zrobił sobie dodatkową archiwalną, gdzie bym przerzucał pacjentów, których wizyta się odbyła a po iluś dniach do innej archiwalnej wrzucałbym te, które się nie odbyły ale sygnalizowałbym, że być może trzeba się skontaktować z pacjentem czy wszystko w porządku i ewentualnie dać możliwość adnotacji jakiejś.
Z takiego układu jaki podałem wynika, że cała "rezerwacja" spadnie na tabelę łączącą. Czy tabela lekarzy będzie zawierać ich kilku czy nie i może nawet codziennie się ich liczba zmieniać, to nie ma żadnej różnicy. Jedynie w przypadku gdy lekarza się "wywala", to trzeba zawiadamiać pacjentów, że ich wizyta jest niemożliwa i powinni się zgłosić na wizytę do innego.
plcm
18.04.2012, 23:55:36
jasne logicznie patrzac rozwiazanie twoje jest dobre ale dajmy na to ze nie dodam do tej funkcji zadnych wyjatkow i kazdy uzytkownik bedzie sie mogl zarejestrowac do kazdego lekarza wiec jak byloby 300 uzytkownikow i 30 lekarzy i przykladowo oczywiscie kazdy z uzytkownikow zapisal by sie do tego samego lekarza to w tabeli laczacej byloby 9000 rekordow czy w tym przypadku nie wygodniej dla kazdego lekarza stworzyc osobna tabele?
ja nie mam zamiaru sie sprzeczac ale prosze o porade czy faktycznie przy duzych ilosc jedna tabela laczaca wszystko jest wygodnym zastosowaniem?
wydaje mi sie ze tak wygladalaby przykladowa tabela z dwoma lekarzami ktorzy przyjmuja pacjentow dziennie 4 razy na jedna godzine a na jedna godzine max moga przyjac 5 pacjentow powiedz mi w takim razie jezeli pacjent o id = 5 przypisany do lekarza o id 2 na godzine 11 zrezygnuje
i powiedzmy ze pacjent o id = x chce sie zapisac do lekarza o id = 2 jak powinna wyglac funkcja ktora zapisze tego pacjenta na ta godzine do lekarza o id 2 bo wczesniej zakladalem ze jezeli kazdy lekarz mialby swoja tabele to byloby latwiej spr ktore pole jest wolne i dodac do niego nowa wartosc
id_lekarz godzina id_pacjent1 id_pacjent 2 id_pacjent3 id_pacjent4 id_pacjent5
1 11:00 3
5
6
4
7
13:00
1
8
11
15
17
16:00
19
21
35
23
14
18:00
37
54
72
47
62
id_lekarz godzina id_pacjent1 id_pacjent 2 id_pacjent3 id_pacjent4 id_pacjent5 (wiersz wpisalem zeby sie wyrazniej czytalo)
2 11:00
3
5
6
4
7
13:00
4
5
11
15
17
16:00
19
21
35
23
14
18:00
37
54
72
47
62
thek
19.04.2012, 20:34:56
Co to jest 9000 rekordów z 3 polami? To jest nic

Dobrze zrobiona baza takich rekordów wytrzyma kilka milionów.
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.