Клуб API Карт

(вопрос) запрос с ошибкой при геокодировании

Evgeniy21
25 марта 2012, 10:58

задача была такая, при добавлении адреса в БД автоматически получать координаты объекта. решил её таким образом.

 

$string = file_get_contents('http://geocode-maps.yandex.ru/1.x/?geocode='.$city.',+'.$street.'+'.$typestreet.',+'.$house.'&key='.$Key

preg_match('|<pos>(.*)\s(.*)</pos>|Usi',$string,$pos); 

echo $pos[1]."\r\n".$pos[2]; 

 

теперь вопрос, как сделать так чтобы при вводе неправильного адреса(для конкретного города) выдавало сообщение об ошибке?

 

4 комментария
Подписаться на комментарии к посту

if(preg_match('|(.*)\s(.*)|Usi',$string,$pos)){

echo $pos[1]."\r\n".$pos[2];

}else{

print "Ошибка";

}

спасибо, но вопрос не в этом. попробую сформулировать так.  Например если я ввожу улицу Металлургов с оргфаграфической ошибкой (Металургов) выдаются координаты объекта, такие как если бы я ввел без ошибки.  геокодирование правит ошибки, можно это как то обойти? или какое ещё может быть решение?

Тогда тебе нужен словарь. ИМХО создавай справочник названий.

спасибо так и думал что придется все улицы в базу прописывать, а потом сравнивать. просто думал как то проще можно это сделать.