作者 lihan
1 个管道 的构建 通过 耗费 1 秒

自动定位功能

... ... @@ -46,8 +46,11 @@ class ActivityController extends HomeBaseController
echo json_encode(['data' => $result, 'code' => 20000]);
exit();
} else {
require_once EXTEND_PATH . '/WeChatCommon.php';
$wx = new \WeChatCommon();
return $this->fetch(':_list', [
'result' => $result
'result' => $result,
'js_sdk' => $wx->js_sdk()
]);
}
}
... ...
... ... @@ -146,4 +146,14 @@ class IndexController extends HomeBaseController
}
}
//更新用户经纬度
public function updatePosition() {
$position = [
'id' => session('user.id'),
'lat' => request()->param('lat'),
'lng' => request()->param('lng')
];
Db::name('user')->update($position);
}
}
\ No newline at end of file
... ...
... ... @@ -12,6 +12,7 @@
<script type="text/javascript" src="__TMPL__/static/assets/font/iconfont.js"></script>
<script type="text/javascript" src="__TMPL__/static/js/base.js"></script>
<link rel="stylesheet" href="__TMPL__/static/css/Peripheral-short-term.css" />
<script src="http://res2.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
<style type="text/css">
.swiper-container {
height: 3.6rem;
... ... @@ -172,5 +173,37 @@
})
});
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: '{$js_sdk.appId}', // 必填,公众号的唯一标识
timestamp: '{$js_sdk.timestamp}', // 必填,生成签名的时间戳
nonceStr: '{$js_sdk.nonceStr}', // 必填,生成签名的随机串
signature: '{$js_sdk.signature}',// 必填,签名
jsApiList: [
'getLocation'
] // 必填,需要使用的JS接口列表
});
wx.ready(function(){
// config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。
wx.getLocation({
type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'
success: function (res) {
var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90
var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。
var speed = res.speed; // 速度,以米/每秒计
var accuracy = res.accuracy; // 位置精度
$.ajax({
url:"{:url('portal/Index/updatePosition')}",
data:{
lat:latitude,
lng:longitude
},
type:"POST",
dataType:"JSON"
})
}
});
});
</script>
\ No newline at end of file
... ...