Использование PHP / MySQL с Google Maps

Обновление 2 : Таким образом, я никогда не использовал функцию отладки в firebug, но я просто посмотрел на раздел сценария, и я понял, теперь я попытаюсь понять это.

Не удалось загрузить источник для: http: //localhost/googleMap/phpsqlajax_genxml.php

хия,

Я выполнил этот учебник ниже http://code.google.com/apis/maps/articles/phpsqlajax_v3.html#outputxml

Я столкнулся с проблемой, рядом с тобой, я надеюсь, что кто-то еще здесь работает и может помочь мне открыть мою проблему. Всего в этом уроке есть 4 шага

  • Создание таблицы
  • Заполнение таблицы
  • Вывод XML с помощью PHP
  • Создание карты

Я успешно выполнил все шаги, однако полученный XML-код не читается созданной вами картой google. Все файлы находятся в одном каталоге, и я не изменил ни одного из имен файлов из учебника. У учебника есть шаг, чтобы проверить, выводит ли php-файл phpqlajax_genxml.php XML-файл, и я успешно его протестировал.

Проблема в том, что карта не передает элементы, которые у меня есть в базе данных, которые должны быть преобразованы в xml для считываемой карты.

Любая помощь, или указывая на меня в правильном направлении, будет высоко оценена.

ОБНОВЛЕНИЕ 1 : Я понимаю, что у меня нет кода для показа здесь, есть только 3 файла, поэтому я не уверен, что будет лучше всего использовать. У меня есть вопрос, который может помочь в моей проблеме.

В выходной части xml учебника меня тоже спрашивают

Вызовите этот PHP-скрипт из браузера, чтобы убедиться, что он создает допустимый XML. Если вы подозреваете, что есть проблема с подключением к вашей базе данных, вам может быть легче отладить, если вы удалите строку в файле, которая устанавливает заголовок в тип содержимого text / xml, поскольку это обычно заставляет ваш браузер пытаться проанализировать XML и может затруднить просмотр отладочных сообщений.

Это файл phpsqlajax_dbinfo.php

<?php $username="root"; $password="root"; $database="root-googleMap"; ?> 

Это код для генерации xml. Является ли XML-документ фактически выполненным и может ли я открыть его или это временное преобразование. Если так. Как сделать шаг выше, чтобы проверить, я действительно не понимаю.

 <?php require("phpsqlajax_dbinfo.php"); // Start XML file, create parent node $doc = domxml_new_doc("1.0"); $node = $doc->create_element("markers"); $parnode = $doc->append_child($node); // Opens a connection to a mySQL server $connection=mysql_connect (localhost, $username, $password); if (!$connection) { die('Not connected : ' . mysql_error()); } // Set the active mySQL database $db_selected = mysql_select_db($database, $connection); if (!$db_selected) { die ('Can\'t use db : ' . mysql_error()); } // Select all the rows in the markers table $query = "SELECT * FROM markers WHERE 1"; $result = mysql_query($query); if (!$result) { die('Invalid query: ' . mysql_error()); } header("Content-type: text/xml"); // Iterate through the rows, adding XML nodes for each while ($row = @mysql_fetch_assoc($result)){ // ADD TO XML DOCUMENT NODE $node = $doc->create_element("marker"); $newnode = $parnode->append_child($node); $newnode->set_attribute("name", $row['name']); $newnode->set_attribute("address", $row['address']); $newnode->set_attribute("lat", $row['lat']); $newnode->set_attribute("lng", $row['lng']); $newnode->set_attribute("type", $row['type']); } $xmlfile = $doc->dump_mem(); echo $xmlfile; ?> 

Related of "Использование PHP / MySQL с Google Maps"

Я предполагаю (и надеюсь), что вы больше не используете PHP 4 и что это источник вашей проблемы, функции, связанные с обработкой XML DOM, были заменены классом DOMDocument, который имеет разные имена методов.

Таким образом, я реорганизовал ваш код для совместимости с PHP 5:

 <?php require("phpsqlajax_dbinfo.php"); // Start XML file, create parent node $doc = new DOMDocument("1.0"); $node = $doc->createElement("markers"); $parnode = $doc->appendChild($node); // Opens a connection to a mySQL server $connection=mysql_connect (localhost, $username, $password); if (!$connection) { die('Not connected : ' . mysql_error()); } // Set the active mySQL database $db_selected = mysql_select_db($database, $connection); if (!$db_selected) { die ('Can\'t use db : ' . mysql_error()); } // Select all the rows in the markers table $query = "SELECT * FROM markers WHERE 1"; $result = mysql_query($query); if (!$result) { die('Invalid query: ' . mysql_error()); } header("Content-type: text/xml"); // Iterate through the rows, adding XML nodes for each while ($row = @mysql_fetch_assoc($result)){ // ADD TO XML DOCUMENT NODE $node = $doc->createElement("marker"); $newnode = $parnode->appendChild($node); $newnode->set_attribute("name", $row['name']); $newnode->set_attribute("address", $row['address']); $newnode->set_attribute("lat", $row['lat']); $newnode->set_attribute("lng", $row['lng']); $newnode->set_attribute("type", $row['type']); } echo $doc->saveXML(); ?>