Bir girdi olarak SQL göz önüne alındığında, ben bir PostgreSQL veritabanını sorgulamak ve XML olarak sonuçları dönmek zorunda. Ben Aşağıdaki kod ile bu yapmış:
<?php
$link = "host=localhost dbname=company user=pgsql password=password";
$connect = pg_connect($link);
$query = "SELECT * FROM customer";
$result = pg_query($connect, $query);
$doc = new DomDocument("1.0");
$root = $doc->createElement('data');
$root = $doc->appendChild($root);
while($row = pg_fetch_assoc($result)){
$node = $doc->createElement('collection');
$node = $root->appendChild($node);
foreach($row as $fieldname => $fieldvalue){
$node->appendChild($doc->createElement($fieldname, $fieldvalue));
}
}
$doc->save("cust.xml");
?>
Sonunda, XML belgesine doğrudan bir CSS stil uygulamak olacaktır. Ben her 'toplama' düğüm stil bilgilerini belirleyecektir. Ancak, orada koleksiyonları alt koleksiyonları olacak ve böylece hatta alt-alt koleksiyonları ve olasıdır.
(Yani: Usta, detay, alt-detay, alt-alt-detay, vb)
Sorun benim kod yalnızca Asil, detay, alt ayrıntı için XML oluşturmak erecek. Oluşturulan XML daima verilerinin tüm seviyeleri "yakalamak" olacak böylece nasıl kodunu değiştirebilirsiniz?
Teşekkürler ...
Evet, ben bir hiyerarşik ilişki bahsediyorum. Örneğin, benim geçerli kod ile, ben "Müşteri" tablosundaki alanların tüm niteliklerini, görebilirsiniz. Ancak, ne müşteri niteliklerinden biri 'Adres', ve Müşteri birden fazla adres olsaydı? Bu gibi görünmesi gerekir ...
<data>
<collection>
<fname>Joe</fname>
<lname>Smith</lname>
<address>
<address A> 123...</address A>
<address B> 234...</address B>
</collection>
</data>
Ben adres, nitelik rağmen, alt özelliklerini sahip olduğu gerçeğine "pick up" kodumu değiştirmeye çalışıyorum ...