Я следую этому руководству для добавления маркеров к определенным адресам из моей базы данных DB2 на карты google: https://developers.google.com/maps/articles/phpsqlajax_v3 Я в той части, где я пытаюсь создать XML-документ из моего База данных DB2 и немного запуталась. Это код, который Google написал для итерации через строки и создания XML-документа из него:
// Iterate through the rows, adding XML nodes for each
while ($row = @mysql_fetch_assoc($result)){
// ADD TO XML DOCUMENT NODE
$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("type", $row['type']);
}
Что было бы эквивалентным способом сделать это в DB2 с использованием PHP?
Вам нужно будет использовать соответствующий PHP API DB2, который может включать включение расширения в файле php ini и, возможно, установку драйвера ODBC DB2:
Ниже приведен рабочий пример с использованием метода PDO Driver с try/catch в соединении. Кроме того, вы можете использовать DSN (см. Руководства выше):
# Opening db connection
try {
$conn = db2_connect($database, $user, $password);
$sql = "SELECT * FROM tablename";
$stmt = db2_prepare($conn, $sql);
$result = db2_execute($stmt);
}
catch(PDOException $e) {
echo $e->getMessage();
exit;
}
while($row = db2_fetch_assoc($stmt)) {
// ADD TO XML DOCUMENT NODE
$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("type", $row['type']);
}
# Closing db connection
db2_close($conn);
mysql_fetch_assoc
. Используйте db2_fetch_assoc
. Смотрите редактировать.
mysql_fetch_assoc()
наdb2_fetch_assoc()
, нет?