Joywork/cron/googleMapTest.php
2026-05-22 21:21:54 +03:00

77 lines
2.6 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?php
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
ini_set('display_errors', 1);
error_reporting(E_ALL & ~E_DEPRECATED & ~E_STRICT & ~E_NOTICE);
if($_GET['objId']) {
$get=clearInputData($_GET);
$sql3="SELECT objects.*, rayon.rayon, DATE_FORMAT(objects.date_add,'%d.%m.%Y %H:%i') as date_add
FROM objects, rayon, sp_metro
WHERE objects.rayon = rayon.id
AND objects.id = sp_metro.id_obj
AND objects.id = $get[objId]";
$rez_obj=mysql_query($sql3);
$obj=mysql_fetch_assoc($rez_obj);
if ($obj) {
$mtr = "";
$sql = "SELECT metro.metro FROM metro, sp_metro
WHERE sp_metro.id_metro = metro.id AND sp_metro.id_obj = $obj[id]";
$result = mysql_query($sql);
$m = mysql_fetch_row($result);
$mtr = $m[0];
$params = array();
$params['sensor'] = false; // указывает, исходит ли запрос на геокодирование от устройства с датчиком
$params['language'] = "ru";// язык данных
$params['mode'] = "walking";// идем пешком, может быть driving, walking, bicycling
// адрес или координаты отправных пунктов
$params['origins'] = "Россия, Санкт-Петербург, ".$obj['adres'];
echo $params['origins']."<br>";
// адрес или координаты пунктов назначения
$params['destinations'] = "Россия, Санкт-Петербург, станция метро ".$mtr;
echo $params['destinations']."<br>";
$params = http_build_query($params);
$url = "http://maps.googleapis.com/maps/api/distancematrix/json?" . $params;
echo $url;
$json = file_get_contents($url);
echo $json."<br>";
$json = json_decode($json, true);
$meters = 0;
$peshkom = 0;
$transport = 0;
if ($json['status'] == "OK" && $json['rows'] && $json['rows'][0] && $json['rows'][0]['elements'] && $json['rows'][0]['elements'][0] && $json['rows'][0]['elements'][0]['status'] == "OK") {
$meters = $json['rows'][0]['elements'][0]['distance']['value'];
}
if ($meters > 0) {
if ($meters <= 100) {
$peshkom = 1;
} else {
if ($meters <= 2000) {
$peshkom = round($meters / 100);
} else {
$transport = round($meters / 1000);
}
}
}
echo "Метры: ".$meters." Пешком: ".$peshkom." Транспортом: ".$transport;
}
}