jacusek
9.11.2009, 22:49:04
Witam.
Zaznaczam od razu, ze jestem początkujący.
Mam taki problem i nie bardzo wiem jak się za to zabrać.
Mam tablę w MYSQL z 60 elementami. Żeby nie zaśmiecać kodu chciałbym tych danych użyć do formularza w html Option. Jednocześnie chciałbym, żeby po wybraniu jednego z elementów tej listy wywoływała się kolejna lista zależna od tej pierwszej.
Szukałem już w różnych miejscach i jakoś tego nie mogę znaleźć. A może lepiej w ogóle dać te 60 pozycji do kodu html i się nie martwić. Siedzę już na tym, że 3 dni.
Z góry dziękuję za pomoc.
Fifi209
9.11.2009, 22:52:59
Lepiej wygenerować raz i mieć spokój - nie obciążać bazy na przyszłość.
piotrooo89
10.11.2009, 09:10:56
Cytat(fifi209 @ 9.11.2009, 22:52:59 )

Lepiej wygenerować raz i mieć spokój - nie obciążać bazy na przyszłość.

obciążenie 60 rekordami z bazy?! tam nie ma żadnego obciążenia i tak się będzie wykonywać mniej niż sekundę... bez przesady jakby miał jakieś 600 000 rekordów to można było by się zastanawiać.
a co do zrobienia zależnych selectów to polecam:
http://www.w3schools.com/AJAX/ajax_database.asp
phpion
10.11.2009, 09:19:31
@piotrooo89:
Moim zdaniem jest dokładnie odwrotnie. Przy 60 rekordach warto rozważyć zapis na sztywno w jakimś pliku (np. jako tablica w PHP), natomiast przy 600 000 rekordów zdecydowanie lepiej pozostać przy bazie danych. Oburzyłeś się na obciążenie bazy - moim zdaniem właśnie ono będzie i będzie zbędne. Po co za każdym razem pobierać te same 60 rekordów skoro można je zapisać jako swego rodzaju cache? To tak jakbyś w bazie trzymał napis "Witaj świecie" i za każdym razem się do niego odwoływał wykonując zapytanie. Masz wtedy tylko 1 rekord więc wg Ciebie obciążenie żadne. Fakt, bardzo niskie, ale pytanie: po co?
piotrooo89
10.11.2009, 09:22:58
@phpion fakt można to na jakiej tablicy zrobić, ale moim zdanie szybkość wczytywania z tablicy nie będzie dużo mniejsza od wczytywania owych rekordów z bazy.
phpion
10.11.2009, 09:25:20
Ale powiedz mi: po co? Przykładowo: po co pobierać za każdym razem np. listę województw? Nie zmieniają się one raczej za często... Można oczywiście mieć je w bazie dla utrzymania integralności danych, ale równocześnie warto mieć cache na dysku i to do niego się odwoływać. Moim zdaniem jest to marnotrawstwo zasobów
piotrooo89
10.11.2009, 09:27:56
tylko województw jest 16 (w miarę mało) przy 60 stworzenie tablicy wydaje się lekko kłopotliwe, być może powiesz ze wprowadzenie tych danych do bazy też może być czasochłonne jednak jest IMHO łatwiejsze.
btw. ile programistów tyle pomysłów i przekonań
jacusek
11.11.2009, 17:30:01
No właśnie. Zrobiłem już zapytanie które wyciąga co selecta na podstawie pytania z bazy i teraz mam następny problem. Po wybraniu jednej z pozycji chciałbym, żeby uastywniał się następny select. W necie znalazłem skrypt wykorzystujący AXAJA. Ale problem polega na tym, ze do jednej pozycji z selecta pasuje więcej niż jedna z pozycji w drugiej części, która miałaby się uaktywniać.
Dokładnie opowiem na przykładzie:
ma to być rezerwacja wizyt w przychodni lekarskiej. Wybieram lekarza1 i ten lekarz ma konsultacje i powiedzmy robi USG. wybieram lekarz2 i on też ma konsultacje i szczerze mówiąc nie wiem jak mam się zabrać za ten problem.
W sumie powstaje relacja w bazie wiele do wielu. I stworzyłem sobie tablę, która przypisywałaby do każdego badania poszczególnych lekarzy. Ale nie bardzo mam pomysł jak się dalej za to zabrać.
Z góry dzięki za pomoc.
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.