Wie macht man eine foreach-Schleife mit einem String und/oder ext/dom XML-Daten ausgeben, die Werte aus einer msql-Datenbank erhält? EDITED: Neueste ArbeitWie man Foreach-Schleife mit dem ext/dom XML ausgeben
<?php
#Programmer: Moses Byanyuma
require('./.env');
// Opens a connection to a mySQL server
try {
$db = new PDO('mysql:host=' . DB_HOST . ';dbname=' . DB_NAME. ';charset=utf8', DB_USERNAME, DB_PASSWORD);
} catch (PDOException $e) {
echo "An Error occured, could not connect!";
}
$statement = $db->query('SELECT * FROM markers');
$xml = new DOMDocument("1.0");
$xml->formatOutput = true;
$markers = $xml->createElement('markers');
$markers = $xml->appendChild($markers);
while ($row = $statement->fetch(PDO::FETCH_ASSOC)) {
$marker = $xml->createElement('marker');
$markers->appendChild($marker);
$marker->setAttribute('name', $row['name']);
$marker->setAttribute('lat', $row['lat']);
$marker->setAttribute('lng', $row['lng']);
$marker->setAttribute('address', $row['address']);
$marker->setAttribute('type', $row['type']);
}
echo "<xmp>".$xml->saveXML()."</xmp>";
?>
Was haben Sie versucht? Ich habe in Ihrer vorherigen Frage einen Link zu einem DOM-Beispiel gepostet. – ThW
@ThW hat gerade diesen Post bearbeitet, ich habe ein wenig Fortschritte gemacht, aber ich kämpfe um die Werte aus der Datenbank in die XML zu bekommen, siehe meine foreach-Schleife –
@ThW zum Beispiel habe ich versucht: $ name = $ xml- > createAttribute ('Name', $ Zeile ['Name']); aber im Browser bekomme ich eine Fehlermeldung, dass createAttribute nur einen Parameter erwartet und es muss nur eine Zeichenkette sein. Dann habe ich versucht, createAttribute mit getAttribute zu ersetzen, aber das hat total nicht funktioniert, bekam einen undefinierten Funktionsfehler, idk was zu tun ist:/ –