-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!newsgate.m10r2.
onet.pl!niusy.onet.pl
From: j...@p...onet.pl
Newsgroups: pl.comp.programming
Subject: problem projektowy w aplikacji bazodanowej
Date: Thu, 29 Sep 2011 13:55:10 +0200
Organization: Onet.pl
Lines: 83
Sender: n...@n...onet.pl
Message-ID: <2...@n...onet.pl>
NNTP-Posting-Host: newsgate.m10r2.onet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset="iso-8859-2"
Content-Transfer-Encoding: 8bit
X-Trace: newsgate.onet.pl 1317297311 5553 213.180.150.14 (29 Sep 2011 11:55:11 GMT)
X-Complaints-To: n...@o...pl
NNTP-Posting-Date: Thu, 29 Sep 2011 11:55:11 +0000 (UTC)
Content-Disposition: inline
X-Mailer: http://niusy.onet.pl
X-Forwarded-For: 83.28.122.136, 10.174.28.51
X-User-Agent: Mozilla/5.0 (X11; U; Linux i686; pl-PL; rv:1.9.2.17) Gecko/20110422
Ubuntu/9.10 (karmic) Firefox/3.6.17
Xref: news-archive.icm.edu.pl pl.comp.programming:192538
[ ukryj nagłówki ]Tworzę w PHP+MySQL witrynę o nieruchomościach i mam pewien problem projektowy.
Na stronie głównej jest lista drop-down z rodzajami nieruchomości (mieszkanie,
kawalerka, itd.). Poniżej jest formularz z danymi nieruchomości (miejscowość,
rok budowy, czy jest garaż, itp.). Zrobiłem tak, że w zależności od wybranego
rodzaju nieruchomości, pokazują się różne pola z danymi (np. dla budynku jest
liczba pięter, a dla kawalerki - nie).
W bazie danych mam:
CREATE TABLE `ogloszenia`.`estate_types` (
`estate_type_id` varchar(5) NOT NULL COMMENT 'Rodzaj nieruchomosci',
`estate_type_name` varchar(33) NOT NULL COMMENT 'Nazwa rodzaju nieruchomosci',
PRIMARY KEY (`estate_type_id`),
KEY `index_estate_type_name` (`estate_type_name`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin2 COMMENT='Rodzaje nieruchomosci'
CREATE TABLE `ogloszenia`.`estate_types_visibility` (
`estate_type_id` varchar(5) NOT NULL COMMENT 'Identyfikator rodzaju
nieruchomosci',
`use_region` varchar(2) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola
wojewodztwa',
`use_town` varchar(25) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola
miejscowosci',
`use_district` varchar(25) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola
dzielnicy',
`use_address` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola adresu',
`use_floor_no` varchar(5) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola numeru
pietra',
`use_floors` varchar(5) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola liczby
pieter',
`use_area` varchar(11) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola powierzchni',
`use_rooms` varchar(10) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola liczby
pokoi',
`use_offices` varchar(10) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola liczby
pomieszczen',
`use_year_built` varchar(5) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola roku
budowy',
`use_ownership` varchar(3) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola formy
wlasnoËści',
`use_standard` varchar(2) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola
standardu',
`use_house` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola domka
letniskowego',
`use_buildings` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola
zabudowan',
`use_garrage` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola garazu',
`use_parking` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola miejsca
parkingowego',
`use_kitchen` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola widnej
kuchni',
`use_balcony` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola balkonu',
`use_gas` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola gazu',
`use_current` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola prÂĄdu',
`use_sewerage` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola
kanalizacji',
`use_furniture_type` varchar(3) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pol
umeblowania',
`use_equipment` varchar(8) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pol
wyposazenia',
`use_guard` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola ochrony',
`use_pictures` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pol zdjec /
filmow',
`use_remarks` varchar(1) NOT NULL DEFAULT '+' COMMENT 'Widocznosc pola
dodatkowego opisu'
) ENGINE=MyISAM DEFAULT CHARSET=latin2 COMMENT='Widocznosc pol zaleznych od
rodzaju nieruchomosci'
Mój problem polega na tym, że nie jestem pewien czy informacja o widoczności pól
powinna być przechowywana w bazie danych (tabela estate_types_visibility). Może
wystarczyłaby tablica JavaScriptowa używana przez funkcję
onchange="showPropertyRows()"? Zrobiłem przechowywanie tych informacji w bazie
danych ponieważ kluczem jest:
`estate_type_id` varchar(5) NOT NULL COMMENT 'Identyfikator rodzaju nieruchomosci'
Zatem tyle jest rekordów ile rodzajów nieruchomości. Gdybym nie miał tabeli w
bazie danych (a tylko tablicę JavaScriptową), to musiałbym przy każdej zmianie
słownika rodzajów nieruchomości zaktualizować kod JavaScript, a tak wystarczy,
że zmienię wpisy w bazie danych (w obu tabelach), bo stosowną tablicę
JavaScriptową dla showPropertyRows() generuję PHPem.
Potrzebuję waszej opinii: które rozwiązanie jest lepsze: z tabelą
estate_types_visibility czy bez?
Byłbym wdzięczny za pomoc.
--
Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Następne wpisy z tego wątku
- 29.09.11 18:08 lolo
Najnowsze wątki z tej grupy
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- U nas propagują modę na SI, a w Chinach naukowcy SI po kolei umierają w wieku 40-50lat
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
Najnowsze wątki
- 2025-06-07 Warszawa => Software .Net Developer <=
- 2025-06-07 Warszawa => Junior SQL / FrontEnd developer <=
- 2025-06-07 Warszawa => Team Lead Data Engineer (Snowflake) <=
- 2025-06-07 Kraków => Kotlin Developer <=
- 2025-06-07 Warszawa => Senior Key Account Manager IT <=
- 2025-06-07 Gdańsk => PHP Developer <=
- 2025-06-07 Warszawa => Specjalista ds. Sprzedaży <=
- 2025-06-07 Łódź => Mainframe (z/OS, Assembler) Developer <=
- 2025-06-07 Warszawa => Sales Assistant and Customer Development Specialist <=
- 2025-06-07 Warszawa => Programista Full Stack .Net <=
- 2025-06-07 Lublin => Delphi Programmer <=
- 2025-06-07 Warszawa => Administrator Systemów OSS <=
- 2025-06-06 Takich niestrzeżonych przejazdów kolejowych są w Polsce setki, a tysiące w Europie
- 2025-06-06 Gdańsk => Team Lead Data Engineer (Snowflake) <=
- 2025-06-06 Gdynia => MLOps Engineer <=