Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] odległość między miastami
Forum PHP.pl > Forum > Przedszkole
relik
Witam ,od razu mówię ,że to moje początki z php. Mam taki mały problem ,a dotyczy on tego ,pokrótce go przedstawię.
Chodzi o to ,że będę robił stronkę w której klient ,będzie podawał różne swoje dane itd.
Dany klient będzie podawał miejscowość w jakiej mieszka i drugą miejscowość gdzie chciałby się znaleźć. Po podaniu tych miejscowość będzie wyliczana odległość między nimi. Oczywiśćie problemu nie będzie jeśli w bazie będą podane miejscowości i kilometry między nimi ,bo odrazu odczyta i wyświetli.
Lecz problem tkwi w tym ,że nie da się zrobić bazy tak dużej samemu ,z wszystkimi miejscowościami i odległościami między nimi.
Chciałbym się dowiedzieć czy da się to jakoś rozwiazać mając połączenie z internetem ,nie mam pojęcia jak to by wczytało tą odległość i wyświetliło na mojej stronce ,no i jaka to była tamta stronka.

Mam nadzieję ,że ktoś mi pomoże ,a jak czegoś nie rozumie to jeszcze dopowiem lepiej.
pojas
Możliwe, że Google Maps daje podobne możliwości, ale o tym musisz poczytać i przekonać się na 100%. Wydaje mi się, że zadanie jest trudne - chcesz stworzyć stroną na wzór ZUMI.pl?
relik
Można tak powiedziec ,dokładnie bym porównał z tym http://www.odleglosci.pl/odleglosci.php
Tylko ,że mi nie chodzi aby coś rysował ,drogę najmniejszą pokazywał ,tylko odległość miedzy mistami.

Niestety nigdzie nie mogłem znaleźdz bazt w sql gdzie by były miasta i odległości tak jak jest w atlasie samochodowym. sad.gif
Cosi*
Jest świetny i do tego darmowy serwis, z którego możesz zbierać dane dotyczące położenia miast. Nazywa się Wikipedia smile.gif
Przy każdym haśle znajduje się długość i szerokość geograficzna miasta. Wystarczy je wyciągnąć z tego serwisu (co nie jest trudne, bo znajdują się w kontenerze o tej samej nazwie), odpowiednio przekształcić i policzyć odległość.
relik
@Cosi*
Czy możesz to trochę dokładniej opisać? Co masz na myśli pisząc o "kontenerze"?
drPayton
W kontenerze, czyli dane te są w jakimś ściśle określonym elemencie (np DIV'ie, określonej komórce tabeli etc). Wtedy czy to php'em czy to JS'em możesz wyciągnąć i obrobić zawartość takiego elementu - kontenera)
Tylko, że jak sprawdziłem, na Wikipedii te współrzędne są w komórce tabeli która nie ma własnego ID, więc będzie to mocno skomplikowane...
Cosi*
Właśnie. W tym przypadku jest to element <span id="coordinates">. Teraz musisz zrobić następujące rzeczy:
- za pomocą file_get_contents() wczytać zawartość odpowiedniego pliku do zmiennej. Sprawa jest o tyle prosta, że zazwyczaj będziesz miał do czynienia z adresem http://pl.wikipedia.org/Nazwa_miasta. Jeżeli jest kilka miast, do adresu dochodzi nazwa województwa
- za pomocą preg_match() znaleźć właściwy element, ograniczony przez <span id="coordinates" z jedej strony i </span> z drugiej
- z tego elementu wyciąć wszystkie znaczniki html, czyli wszystkie ciągi znaków ograniczone przez < >
- zostanie Ci coś takiego: 50°27' N 19°22' E smile.gif
Powodzenia

PS. @drPayton: mają id smile.gif
drPayton
Oupsss, faktycznie, aż tak daleko wstecz nie szukałem biggrin.gif
BugsBunny
Może można kupić taką bazę danych, bo wątpie żeby te w szystkie serwisy (odległościowe, planujące trasę itp) tworzyły je od zera
kosmowariat
panowie, z tym wiki to jest tak że można na tej podstawie policzyć drogę w lini prostej...
Roguś
Gdzies widziałem mape polski na necie gdzie sie klikało na mape, zaznaczał sie punkt i gdzy ruszyłes mysza to liczylo odleglosc miedzy tym punktem a polozeniem myszy i wyswietlalo je .
kossa
Cytat
Gdzies widziałem mape polski na necie gdzie sie klikało na mape, zaznaczał sie punkt i gdzy ruszyłes mysza to liczylo odleglosc miedzy tym punktem a polozeniem myszy i wyswietlalo je .


ta mapa pokazująca odległość o której piszesz to pilot.pl

pozdrawiam,
Łukasz
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.