亚洲必赢app在哪下载因而微信获取当前地理地点

By admin in 亚洲必赢app在哪下载 on 2019年3月15日

第二,在静态页面中,添加微信的布局文件,通过js获取。

<script type=”text/javascript”>

  wx.config({

    debug: false,

    appId: ‘{$signPackage.appId}’,

    timestamp: ‘{$signPackage.timestamp}’,

    nonceStr: ‘{$signPackage.nonceStr}’,

    signature: ‘{$signPackage.signature}’,

    jsApiList: [

      // 全部要调用的 API 都要加到那几个列表中

      ’checkJsApi’,

      ’openLocation’,

       ‘getLocation’,

       ‘scanQRCode’

    ]

  });

  wx.ready(function () {

    $(‘#scan’).click(function(){

      wx.scanQRCode({

        needResult: 0,

         });

       });

    wx.checkJsApi({

       jsApiList: [

         ‘getLocation’

      ],

      success: function (res) {

        if (res.checkResult.getLocation == false)

        {

          alert(‘你的微信版本太低,不协助微信JS接口,请升级到最新的微信版本!’);

           return;

        }

      }

    });

    wx.getLocation({

      success: function (res) {

           var latitude = res.latitude; // 纬度,浮点数,范围为90
~ -90

        var longitude = res.longitude; //
经度,浮点数,范围为180 ~ -180。

        var geoconv =
http://api.map.baidu.com/geoconv/v1/?callback=coordinateTransformation&coords=

  • longitude + ‘,’ + latitude +
    ‘&from=1&to=5&ak=5BFNbSgnVF5g2O72NpvTDxFm’;

        var script = document.createElement(‘script’);

        script.src = geoconv;

        document.head.appendChild(script);

       },

      cancel: function (res) {

        alert(‘用户拒绝授权获取地理地方’);

         }

     });

  });

  function coordinateTransformation(data)

  {

    var LATLNG = data.result[亚洲必赢app在哪下载,0].y + ‘,’ + data.result[0].x;

    var url =
http://api.map.baidu.com/geocoder/v2/?callback=getCurrentLocation&ak=5BFNbSgnVF5g2O72NpvTDxFm&location=

  • LATLNG + ‘&output=json&pois=1’;

    var script = document.createElement(‘script’);

    script.src = url;

    document.head.appendChild(script);

   }

  function getCurrentLocation(data)

  {

    if(data.status === 0)

     {

      var address = data.result.formatted_address,

      x = data.result.location.lng,

         y = data.result.location.lat,

      city = data.result.addressComponent.city,

      street = data.result.addressComponent.street ||
data.result.formatted_address,

      reqData = ‘street=’ + address + ‘&name=’ + street + ‘&lng=’

  • x + ‘&lat=’ + y + ‘&city=’ + city;

      var url = “{:U(‘Index/savePosition’)}”;

       $.getJSON(url,{‘name’:street,’lng’:x,’lat’:
y,’city’:city},function(data)

       {

         if(data.returnCode) { }

      });

     }

   }

</script>

帮助,在控制器中收取ajax传递的地理坐标,然后保留到session中。

public function savePosition()
{
  $city   = II(‘get.city’,”,’trim’);
  $addr = II(‘get.name’,”,’trim’);
  $lng   = II(‘get.lng’,”,’trim’);
  $lat    = II(‘get.lat’,”,’trim’);

  $myLocation = array(
    ’city’   =>$city,
    ’addr’ =>$addr,
    ’lng’   =>$lng,
    ’lat’   =>$lat,
  );

  $_SESSION[‘MyLocation’] = $myLocation;

  $data[‘returnCode’] = 1;
  $data[‘returnInfo’] = ‘获取地方成功!’;
  $this->ajaxReturn($data);
  return;
}

注:用的是thinkphp框架,II是自定义的措施,获取get或post传递的值,和 I
函数一样。

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图
Copyright @ 2010-2019 亚洲必赢app官方下载 版权所有