根据获取的地理名称,通过百度api得到经纬度,从而显示在地图中
$address = $_GET['address'] ? $_GET['address'] : '山东省济南市大明湖风景区';
//坐标
$apiurl = "http://api.map.baidu.com/geocoder/v2/?address=" . $address . "&output=json&ak=3075ca513c180f154a83789e3f93c1c4&callback=showLocation";
$file = file_get_contents($apiurl);
$file = str_replace("showLocation&&showLocation", "", $file);
$file = substr($file, 0, -1);
$file = substr($file, 1);
$arrpoint = json_decode($file, true);
$x = $arrpoint['result']['location']['lng'];
$y = $arrpoint['result']['location']['lat'];
地址查询表单
<form action="index.php">
<input type="text" name="address" value="<?php echo $address; ?>" />
<input type="submit" value="提交" />
</form>
地址搜索查询结果
<div id="allmap" class="mt10 mapleft" style="width:100%; height:100%;"></div>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.4"></script>
<script type="text/javascript">
var x = '<?php echo $x; ?>';
var y = '<?php echo $y; ?>';
var shopInfo = "地理名称:<?php echo $address; ?></span>";
var map = new BMap.Map("allmap"); // 创建Map实例
var point = new BMap.Point(x, y);
map.centerAndZoom(point, 15); //设置中心点 和缩放级别
//map.addControl(new BMap.NavigationControl()); //添加鱼骨
//map.addControl(new BMap.ScaleControl()); // 添加比例尺控件
map.addControl(new BMap.OverviewMapControl()); //添加缩略地图控件
map.enableScrollWheelZoom(); // 启用滚轮放大缩小。
map.enableKeyboard(); // 启用键盘操作。
// map.addControl(new BMap.MapTypeControl({ anchor: BMAP_ANCHOR_TOP_RIGHT }));
var marker = new BMap.Marker(point);
var infoWindow = new BMap.InfoWindow(shopInfo); // 创建信息窗口对象
map.addOverlay(marker);
marker.addEventListener("click", function() {
this.openInfoWindow(infoWindow);
});
//map.openI
下一篇:
js中国地图组件
友情提示:垃圾评论一律封号...