function cache_locate($nLat, $nLon, $nDistance) { global $login; $rsCache = sql_slave("SELECT " . geomath::getSqlDistanceFormula($nLon, $nLat, $nDistance) . " AS `distance`, \n\t `caches`.`wp_oc`\n\t FROM `caches` \n\t INNER JOIN `cache_status` ON `caches`.`status`=`cache_status`.`id`\n\t WHERE `caches`.`latitude`>'&1' AND \n \t\t\t\t\t\t\t\t\t\t `caches`.`latitude`<'&2' AND \n\t\t\t\t\t\t\t\t\t\t `caches`.`longitude`>'&3' AND \n\t\t\t\t\t\t\t\t\t\t `caches`.`longitude`<'&4' AND\n\t\t\t\t\t\t\t\t\t\t (`cache_status`.`allow_user_view`=1 OR `caches`.`user_id`='&1')\n\t\t\t\t\t ORDER BY `distance` ASC LIMIT 1", geomath::getMinLat($nLon, $nLat, $nDistance), geomath::getMaxLat($nLon, $nLat, $nDistance), geomath::getMinLon($nLon, $nLat, $nDistance), geomath::getMaxLon($nLon, $nLat, $nDistance), $login->userid); $rCache = sql_fetch_assoc($rsCache); sql_free_result($rsCache); if ($rCache === false) { echo '<caches></caches>'; exit; } output_cachexml($rCache['wp_oc']); }
function cache_locate($lat, $lon) { $max_distance = 5; $rsCache = sql_slave("SELECT " . geomath::getSqlDistanceFormula($lon, $lat, $max_distance) . " AS `distance`, \r\n\t `caches`.`wp_oc`\r\n\t FROM `caches` \r\n\t WHERE `caches`.`latitude`>'&1' AND \r\n \t\t\t\t\t\t\t\t\t\t `caches`.`latitude`<'&2' AND \r\n\t\t\t\t\t\t\t\t\t\t `caches`.`longitude`>'&3' AND \r\n\t\t\t\t\t\t\t\t\t\t `caches`.`longitude`<'&4' AND\r\n\t\t\t\t\t\t\t\t\t\t `caches`.`status` IN (1, 2)\r\n\t\t\t\t\t ORDER BY `distance` ASC LIMIT 1", geomath::getMinLat($lon, $lat, $max_distance), geomath::getMaxLat($lon, $lat, $max_distance), geomath::getMinLon($lon, $lat, $max_distance), geomath::getMaxLon($lon, $lat, $max_distance)); $rCache = sql_fetch_assoc($rsCache); sql_free_result($rsCache); if ($rCache === false) { echo '<caches></caches>'; exit; } output_cachexml($rCache['wp_oc']); }