问题描述
|
大家好,在这里:)
因此,我们终于获得了gps数据,可以使用PHP将数组中的数据从android设备传递到数据库。太棒了
现在,我需要将数据从表中拉出并执行我可以想到的两件事之一。
我可以使用fwrite()修改现有的PHP页面,以将传入的数据写入另一个PHP页面,该页面的行为类似于db表本身.....这有点违反了将内容存储在db中的目的。
我可以创建一个PHP页面,当它想从数据库中拉出所有gps标记时,设备就会命中。我目前不知道该怎么办。
我的问题是对于第一种方法,我有点不确定这在空间方面有多有效,与仅仅从数据库中提取内容有关,而且我也不确定如何设置变量,以便fwrite()实际上将变量写入数据库中。我需要的json格式
为了使用fwrite()并使事情正确写入新页面,我会这样使用吗?
$myFile = \"testFile.PHP\";
$fh = fopen($myFile,\'w\') or die(\"can\'t open file\");
$stringData = \" \"lat\": \",$lat,\" \\n\";
fwrite($fh,$stringData);
$stringData = \" \"long\": \",$long,$stringData);
fclose($fh);
对于第二种方法,我不确定真的从哪里开始。我将gps信息存储在MysqL数据库的表中,因此我需要一个PHP脚本,该脚本将表中的所有gps标记返回给用户,以便它们出现在设备上。很快也将转移到postgresql数据库,因此这样做的帮助也将非常有用。
再一次的帮助将不胜感激:)
解决方法
在这两个选项中,选项2是最简单的,也是最好的。 PHP非常简单:
<?php
mysql_connect(\"localhost\",\"USERNAME\",\"PASSWORD\");
mysql_select_db(\"yourdb\");
$sql = \" select location_name,location_lat,location_lon from locations \";
$res = mysql_query($sql);
$locations = array();
for ($i = 0; $i < mysql_num_rows($res); $i++){
$row = mysql_fetch_assoc($res);
$locations[] = (object) $row;
}
echo json_encode($locations);
?>
,因此,您想要一个PHP脚本来从数据库中获取GPS数据并以JSON输出,供Android应用使用吗?
您需要以下高层步骤和相应的子问题才能找到答案:
查询数据库
\“如何编写SQL查询?”
\“如何使用PHP对MySQL和PostgreSQL执行SQL查询?”
将查询结果格式化为JSON
\“如何使用PHP将数据序列化为JSON?\”