Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Podział polski
ShadoV
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 6.08.2007

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


Witam.
Pisze stronę i jest mi potrzeby podział polski na województwa, powiaty, gminy , miejscowości i dzielnice.
Znalazłem w necie takie coś, ale brakuje tam podziału na dzielnice.
Na php się znam tak sobie, ale nie na js i dla tego mam do was prośbę.
Umiał by mi ktoś wytłumaczyć jak to zrobić, albo pokazać na przykładzie?
Gotowiec znajduje się pod linkiem: http://www.polip.com/download/wiocha.tgz
Z góry bardzo dziękuje za każdą pomoc.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




XPathy na dużych plikach XML do demonów szybkości nie należą. Zrobić w nich zaś sensowny odpowiednik full-text-searcha to już zupełnie zajedziesz maszynkę. Innymi słowy - niby można - tylko czy jest to dobre i sensowne podejście?

Iść zawsze można, nikt nikomu nie broni. Problemem jest jednak faktyczna wydajność w ujęciu ogólnym. Wyszukiwanie adresu jest bowiem tylko częścią zazwyczaj szerszego zapytania. W takim wypadku zaczynają się kombinacje z optymalizacjami już, bo inaczej się po prostu nie da tego w rozsądny (o możliwie niskim czasie przeszukiwania) sposób zrobić.

A zwróciłeś uwagę, że najczęściej ulica to tylko jedna składowa zapytania? Szukasz po prostu "Kwiatowa 10" czy "Pcim Dolny, Kwiatowa 10"? Jak z tego złapiesz wzorzec dla LIKE? A może złapiemy regexp w bazie? W tym momencie szlag trafia cudowne indeksy. Regexp i Like wszak z indeksu korzystają tylko gdy mają wspomniane przez Ciebie zakotwiczenie z lewej. Innymi słowy: LIKE 'państwo/%' indeks chwyci, ale już LIKE '%słowo%' niestety z indeksu nie korzysta. A przecież trzeba doprowadzić do formy, gdzie mamy wyszukiwane pathy nie z jednym, ale dwoma lub więcej miejscami podanymi jako parametry wyszukiwania. Tu i tak jest w miarę jeszcze statycznie, bo adresy wszak aż tak często się nie zmieniają, a i rozrost miejscowości aż taki szybki nie jest.

Co zaś do "trzaskania appek", to akurat w pracy mam moment, gdy siedzimy z zespołem nad wersją 1.0 aplikacji obecnie tworzonej (nazwijmy ją 2.0) No i mamy na tapecie integrację "wsobną", czyli wchłonięcie części funkcjonalności 1.0 do obecnie rozwijanej, przy jednoczesnym nie tykaniu wersji 1.0, bo leży na produkcji (IMG:style_emoticons/default/smile.gif) Migracja pełną gębą za jakiś czas, a już teraz przemapowywanie modeli, encji i relacji oraz co z tym związane, przemyślenie transformatorów danych pomiędzy biema wersjami oraz przerobienie kodu tak, by jakiś czas działały na produkcji oba i nie kolidowały ze sobą, bo będą wszak na tych samych danych równolegle pracowały. Mimo tego że bazowano na encjach z 1.0, to projekt nieco odpłynął od pierwotnej koncepcji. Było wtedy trochę błędów popełnionych. Samo wydzielenie i "optymalizacja" staroci po jakoś pół roku to już tragedia. Po 2 latach to już by była masakra, która wiązała by się pewnie z zaoraniem kodu i pisaniem od zera - szybciej by to pewnie wyszło.

Dlatego też IMHO czasem warto poświęcić chwilkę i od początku zaprojektować coś z głową, niż po miesiącu czy dwóch przeklinać nietypową implementację, nie zawsze do końca przemyślanego podejścia. Ilość wulgaryzmów wyrażanych wszem i wobec na pewno będzie mniejsza (IMG:style_emoticons/default/wink.gif)

Tutaj problem na jaki napotkał autor nie jest duży. Prawda jest taka, że podany przykład nie jest problemem tak naprawdę. Nie jest bowiem konieczne wrzucanie całego Terytu (IMG:style_emoticons/default/smile.gif) Sam gdy z nim pracowałem olałem znaczną część danych. Do jednoznacznego określenia jest tak naprawdę wystarczające mieć: wojewodztwo - powiat - miejscowosc i ewentualnie ulica czy dzielnica. Zależy czy te ostatnie konieczne i używane. Każdy inny rekord można śmiało odrzucić.

Tu właśnie zahaczamy o najważniejsze - przemyślenie aplikacji, jej funkcjonalności i działania. I właśnie to powinien autor tematu przemyśleć zanim zacznie pisać skrypty importujące dane z xml.
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 - 22:43