欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

javascript - 微信js获取经纬度如何传值以及后台如何接收

程序员文章站 2022-04-27 19:03:17
...
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:"{:U('home/Share/index')}",
            data:{latitude:latitude,longitude:longitude},
            type:"POST",
            dataType:"json",
            success:function(){
                
            }
        })
    },
})

这样用ajax传值在后台controller,var_dump($_POST)是空值,是怎么回事?

回复内容:

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:"{:U('home/Share/index')}",
            data:{latitude:latitude,longitude:longitude},
            type:"POST",
            dataType:"json",
            success:function(){
                
            }
        })
    },
})

这样用ajax传值在后台controller,var_dump($_POST)是空值,是怎么回事?

写法是正确的,至于为什么获取不到就需要自己调试一下你的代码。


肉测办法:

直接输出接受到的数据,然后success中接受返回的对象。

后台输出:
echo json_encode($_POST);exit();
前台输出:
success:function(msg){
        console.log(msg);    
       }

ajax是属于异步请求,不能直接在controller输出

相关标签: javascript php