/var/www/myprog.com.ua/site/tools
Edit: /var/www/myprog.com.ua/site/tools/street.php (10426B)
$country . ', ' . $city.' '.$s, // адрес
'format' => 'json', // формат ответа
'results' => 1, // количество выводимых результатов
//'key' => $key, // ваш api key
);
var_dump($params);
// запрос яндексу
$response = json_decode(file_get_contents('http://geocode-maps.yandex.ru/1.x/?' . http_build_query($params, '', '&')));
//var_dump($response);
// если пришел ответ
if ($response->response->GeoObjectCollection->metaDataProperty->GeocoderResponseMetaData->found > 0) {
$pos = explode(' ', $response->response->GeoObjectCollection->featureMember[0]->GeoObject->Point->pos);
// взять координаты
$result_y['la'] = $pos[1];
$result_y['lo'] = $pos[0];
//var_dump($response->response->GeoObjectCollection->featureMember[0]->GeoObject->metaDataProperty->GeocoderMetaData->Address->Components);
$result_y['name'] = $response->response->GeoObjectCollection->featureMember[0]->GeoObject->name;
} else {
echo 'yandex not found --> ' . $q.'
';
}
//var_dump($result);
if (isset($result_y)) {
// добавить улицу
//var_dump($street);
$name = $street->properties->name . " " . $street->properties->type;
$sql = "INSERT INTO `adres_list` (`adres`, `object_id`, `city_id`, `la`, `lo`, `confirmed`)
VALUES ('{$s}', '0', '{$_POST['city_id']}', '{$result_y['la']}', '{$result_y['lo']}', '0')";
db_query($sql);
if (mysql_errno() == 0) {
echo 'Insert ok --> ' . $name.'
';
} else {
echo 'insert error --> ' . $name.'
';
}
}
} else {
// поиск улицы Visicom
$u_country = urlencode($country);
$u_street = urlencode(trim($s));
$u_city = urlencode($city);
$url = "http://api.visicom.ua/data-api/2.0/ru/search/adr_street.json?text=$u_country%20,$u_city,%20$u_street&key=$key";
var_dump($url);
if ($curl = curl_init()) {
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($curl);
//var_dump($result);
curl_close($curl);
if ($result) {
$street = json_decode($result);
//var_dump($street);
if (isset($street->url) &&
mb_strtolower($street->properties->country) == $country &&
//strtolower($street->properties->country) == $country &&
mb_strtolower($street->properties->settlement) == $city
//strtolower($street->properties->settlement) == $city
) {
//var_dump($street);
// поиск домов
$url = $street->url . "?key=$key";
//var_dump($url);
if ($curl = curl_init()) {
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($curl);
if ($result) {
$street = json_decode($result);
if (isset($street->url) &&
mb_strtolower($street->properties->country) == $country &&
//strtolower($street->properties->country) == $country &&
mb_strtolower($street->properties->settlement) == $city
//strtolower($street->properties->settlement) == $city
) {
// добавить улицу
//var_dump($street);
$name = $street->properties->name . " " . $street->properties->type;
$sql = "INSERT INTO `adres_list` (`adres`, `object_id`, `city_id`, `la`, `lo`, `confirmed`)
VALUES ('$name', '0', '{$_POST['city_id']}', '{$street->geo_centroid->coordinates[1]}', '{$street->geo_centroid->coordinates[0]}', '0')";
db_query($sql);
$adr_id = mysql_insert_id();
if ($adr_id > 0) {
// добавить дома
foreach ($street->properties->address as $a) {
//var_dump($a->name);
$adr_name = strtolower($a->name);
$sql = "INSERT INTO `adres_houses` (`adres_id`, `name`, `la`, `lo`, `confirmed`)
VALUES ('$adr_id', '$adr_name', '{$street->geo_centroid->coordinates[1]}', '{$street->geo_centroid->coordinates[0]}', '0')";
//var_dump($sql);
$r = db_query($sql);
}
}
}
}
}
}
}
}
}
sleep(1);
}
}
}
if (!isset($_POST['yandex']) && isset($_POST['get_houses'])) {
include 'house.php';
}
?>
Импорт улиц из файла