Php 谷歌地图商店定位器

Php 谷歌地图商店定位器,php,mysql,google-maps,Php,Mysql,Google Maps,嗨,我正在通过谷歌上的“创建商店定位器”教程工作,可以在这里找到 我的代码是 // Select all the rows in the markers table $query = sprintf("SELECT address, name, lat, lng, ( 3959 * acos( cos( radians('%s') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians('%s') ) + sin( radia

嗨,我正在通过谷歌上的“创建商店定位器”教程工作,可以在这里找到

我的代码是

    // Select all the rows in the markers table
$query = sprintf("SELECT address, name, lat, lng, ( 3959 * acos( cos( radians('%s') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians('%s') ) + sin( radians('%s') ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < '%s' ORDER BY distance LIMIT 0 , 20",
  mysql_real_escape_string("37.414832"),
  mysql_real_escape_string("-122.024857"),
  mysql_real_escape_string("37.414832"),
  mysql_real_escape_string("10"));


$result = mysql_query($sql);

if (!$result) 
{
  die('Invalid query: ' . mysql_error());
}
else
{
    echo 'success';
}

// Start XML file, echo parent node
echo "<markers>\n";
// Iterate through the rows, printing XML nodes for each
while ($row = @mysql_fetch_assoc($result)){
  $node = $dom->createElement("marker");
  $newnode = $parnode->appendChild($node);
  $newnode->setAttribute("name", $row['name']);
  $newnode->setAttribute("address", $row['address']);
  $newnode->setAttribute("lat", $row['lat']);
  $newnode->setAttribute("lng", $row['lng']);
  $newnode->setAttribute("distance", $row['distance']);
}


// End XML file
echo "</markers>\n";
echo $dom->saveXML();
//选择标记表中的所有行
$query=sprintf(“选择地址、名称、纬度、纬度,(3959*acos(弧度('%s'))*cos(弧度(纬度))*cos(弧度(lng)-弧度('%s'))+sin(弧度('%s')))*sin(弧度(纬度)))作为与标记的距离,标记的距离按距离限制0,20的顺序小于'%s'”,
mysql\u real\u escape\u字符串(“37.414832”),
mysql\u real\u escape\u字符串(“-122.024857”),
mysql\u real\u escape\u字符串(“37.414832”),
mysql_real_escape_字符串(“10”);
$result=mysql\u查询($sql);
如果(!$result)
{
die('无效查询:'.mysql_error());
}
其他的
{
呼应"成功",;
}
//启动XML文件,回显父节点
回音“\n”;
//遍历行,为每个行打印XML节点
while($row=@mysql\u fetch\u assoc($result)){
$node=$dom->createElement(“标记”);
$newnode=$parnode->appendChild($node);
$newnode->setAttribute(“名称”,$row['name']);
$newnode->setAttribute(“地址”,$row['address']);
$newnode->setAttribute(“lat”,$row['lat']);
$newnode->setAttribute(“lng”,$row['lng']);
$newnode->setAttribute(“距离”,$row['distance']);
}
//结束XML文件
回音“\n”;
echo$dom->saveXML();
但是,当我运行脚本时,会收到错误消息

此页面包含以下错误:
第1列第1行出错:文档为空
下面是第一个错误之前的页面呈现


有人看到我的代码有什么问题吗?

您试图为其创建元素的
$dom
对象在“while”循环之前不存在。
首先创建DOMDocument对象,并在该对象中包含
根节点。

您试图为其创建元素的
$dom
对象在“while”循环之前不存在。
首先创建DOMDocument对象,并在该对象中包含
根节点。

您的代码与示例有很大不同。您在这里引用了所有内容吗?您的代码与示例明显不同。你在这里都引用了吗?