新手求助如何在js上使用ajax接收php读取的mysql数据并输出

小弟基本是纯web开发新手,被拉去实现一个地图项目的数据库连接我用php连接好了数据库代码如下$conn=mysql_connect($mysql_server_name... 小弟基本是纯web开发新手,被拉去实现一个地图项目的数据库连接
我用php连接好了数据库代码如下
$conn=mysql_connect($mysql_server_name, $mysql_username,$mysql_password)
or die("Could not connect: ".mysql_error());
// 从表中提取信息的sql语句
$strsql="select * from point";
// 执行sql查询
$result=mysql_db_query($mysql_database, $strsql, $conn);
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$row_json = json_encode($row);
exit($row_json);
我要读取的是mysql数据库point表中的lnglat(经纬度数据),然后发送到js中去,然后在js调用new BMap.Point()函数将我php读取到的数据库里的坐标按主键id顺序分别打在地图上。想请教一下如果用ajax的话,在js部分的代码该怎么写啊?不是很清楚php函数读取数据库后的数据形式以及转化为jason后的影响,求大神帮忙orz 有其他更方便的方法也请指导一下
展开
 我来答
jack_wang0823
2016-11-19 · TA获得超过2957个赞
知道大有可为答主
回答量:4143
采纳率:87%
帮助的人:1446万
展开全部

如果要描图的话  需要加载 相应的地图api 库    怎样描点要根据 api的格式 比如 , 我用baidu 的api  需要的是数组格式 

那么代码 是这样的 

function getGps_msg(cur_date){
var rt_array=new Array();
cur_phone_no=$("#user_list").val();
$.ajax({
type:"get",
url:"json_gps.php",
async:false,
dataType:"json",
data:{cur_date:cur_date,phone_no:cur_phone_no},
success: function(msg){
  for (var i=0;i<msg.length;i++){
rt_array[String(i)]=msg[i];
}
}
});
return rt_array;
}

 得到你一个描点的数组了. 再去描点

function drawPion(data_arr){
//var data_arr=getGps_msg();
//alert (data_arr);
bm.clearOverlays();
var cx=data_arr['0']['longitude'];
var cy=data_arr['0']['latitude'];

bm.centerAndZoom(new BMap.Point(cx,cy),18);
var dianshu=0;
for (var i=0;i<data_arr.length;i++){
var  msg=data_arr[i]['rec_time'];
var   lab_msg="";
  var   xx= data_arr[i]['longitude'];
  var   yy= data_arr[i]['latitude'];
  //alert (i);
var markergps = new BMap.Marker(new BMap.Point(xx,yy));
//bm.addOverlay(markergps,i); //添加GPS标注
if (dianshu==9){
bm.addOverlay(markergps,i); //添加GPS标注
dianshu=0;
}else{
dianshu++;
}

if(i==0){
//var markergps = new BMap.Marker(new BMap.Point(xx,yy));
bm.addOverlay(markergps,i); //添加GPS标注
lab_msg="最后位置";
}
if(data_arr[i]['img_file_path']!==""){
//var markergps = new BMap.Marker(new BMap.Point(xx,yy));
bm.addOverlay(markergps,i); //添加GPS标注
lab_msg+="[图]";
var sContent ="<img style='float:right;margin:4px' id='imgDemo"+i+"' src='"+data_arr[i]['img_file_path']+"' width='320' height='240' title='photo'/>";
 addClickHandler(sContent,markergps);
}
if (i==data_arr.length-1){
//var markergps = new BMap.Marker(new BMap.Point(xx,yy));
bm.addOverlay(markergps,i); //添加GPS标注
lab_msg="开始位置";
}

var labelgps = new BMap.Label(i+lab_msg,{offset:new BMap.Size(20,-10)});
markergps.setLabel(labelgps,i); //添加GPS标注
}
}

得到效果 

蝈蝈VIP影视
2016-11-19 · TA获得超过320个赞
知道小有建树答主
回答量:373
采纳率:100%
帮助的人:168万
展开全部
json_decode($row_json)后的数据就是你在数据库取到的数据。
转化后的格式和原来一样,为
array(
0=>array(
‘id’=>1,
'name' =>'xxx'
),

1=>array(
‘id’=>2,
'name' =>'xxx1'


光取出并输出我会 ,但是你说打在地图上我不清楚啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式