You are here: PHP5 DOM XML Dynamic Table Generation « PHP Language « IT news, forums, messages
PHP5 DOM XML Dynamic Table Generation

Posted by Chuy08 on 02/08/07 19:15

Given the following XML Doc

<Consumer>
<Programs>
<Program>
<Title>30 Year</Title>
<author>Juan Rodriguez</author>
<publisher>abc</publisher>
</Program>
<Program>
<Title>20 Year</Title>
<author>Albert Rodriguez</author>
<publisher>abc</publisher>
</Program>
<Program>
<Title>10 Year</Title>
<author>Jose Guzman</author>
<publisher>xyz</publisher>
</Program>

How could I construct a table like the following:

Title | Author |

ABC Publishing |
30 Year | Juan Rodriguez |
20 Year | Albert Rodriguez |

XYZ Publishing
10 Year | Jose Guzman |


Currently I can build a dynamic table using the following but I can't figure
out how to only print out the publisher once as a heading for all the
products that match it, and then when a new publisher is detected print a
new header and output all matching published products beneath that.

$file = 'results.xml';

// Loading the results into a new DomDocument
$dom1 = new DOMDocument('1.0', 'ISO-8859-1');
$dom1->load($file, LIBXML_NOBLANKS);

<?php
echo("<TR>");
echo("<TH></TH>");
echo("<TH>Title</TH>");
echo("<TH>Author</TH>");
echo("<TH>Publisher</TH>");

$root = $dom1->documentElement;

$title = $dom1->getElementsByTagName("Title");
$author = $dom1->getElementsByTagName("Author");
$publisher = $dom1->getElementsByTagName("Publisher");

$length = $title->length;
for ($x=0; $x < $length; $x++) {


echo "<TR><TD>".$title->item($x)->nodeValue."</TD>";
echo "<TD>".$author->item($x)->nodeValue."</TD>";
echo "<TD>".$publisher->item($x)->nodeValue."</TD></TR>";

The above code actually outputs

Title | Author | Publisher

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация