Aide pour parser tableau avec DOmdocument
bonjour
pouvez vous me dire s'il est possible (avec DomDocument et php) de recuperer les données presentes uniquement dans les tableaux ayant pour class='tableauOK' sachant que:
- le nb de tableaux ayant pour class='tableauOK' peut varier
- le nb de tableaux ayant pour class="SYSTEM" peut aussi varier
ci dessous le code HTML à parser et le debut de code
mais je ne vois pas comment faire pour recuperer les données que des tableaux avec class='tableauOK'.
On m'a parle de DOMXPath mais je ne vois pas comment faire
merci pour votre aide
NR
<table id="tab" class="SYSTEM" cellpadding="0" cellspacing="0"><thead><tr><th>N</th><th>Name</th><th>Results</th></tr></thead><tbody><tr class="info"><td class="num"><a href="/page/menu.html?id=98">1</a></td><td><a href="/page/menu.html?id=78"><span>TEST1</span></a></td><td><a href="/page/menu.html?id=7798">value=1</a></td></tr><tr class="info"><td class="num"><a href="/page/menu.html?id=9">5</a></td><td><a href="/page/menu.html?id=8"><span>TEST2</span></a></td><td><a href="/page/menu.html?id=98">value=7</a></td></tr><tr class="info"><td class="num"><a href="/page/menu.html?id=9">789</a></td><td><a href="/page/menu.html?id=9"><span>TEST3</span></a></td><td><a href="/page/menu.html?id=900">value=77</a></td></tr></tbody></table><table class='tableauOK' border='0' cellpadding='0' cellspacing='0' id='TableOK'><thead><tr><th width='8px'>DATE</th><th width='400px'>VALUE</th><th>STATUS</th></tr><tr><td style='text-align:center'><strong>06/01/2011</strong></td><td><strong><a href='/TEST/page.html?id=71'>x=12</a></td><td><strong>ok</strong></td></tr><tr><td style='text-align:center'><strong>07/02/2011</strong></td><td><strong><a href='/TEST/page.html?id=22'>x=1230</a></td><td><strong>NO</strong></td></tr><tr><td style='text-align:center'><strong>01/02/2010</strong></td><td><strong><a href='/TEST/page.html?id=7'>x=11</a></td><td><strong>OK</strong></td></tr></table><table class='tableauOK' border='0' cellpadding='0' cellspacing='0' id='TableOK'><thead><tr><th width='8px'>DATE</th><th width='400px'>VALUE</th><th>STATUS</th></tr><tr><td style='text-align:center'><strong>16/03/2009</strong></td><td><strong><a href='/TEST/page.html?id=761'>x=16</a></td><td><strong>ok</strong></td></tr><tr><td style='text-align:center'><strong>12/01/2011</strong></td><td><strong><a href='/TEST/page.html?id=220'>x=2</a></td><td><strong>NO</strong></td></tr><tr><td style='text-align:center'><strong>01/01/2011</strong></td><td><strong><a href='/TEST/page.html?id=8'>x=1100</a></td><td><strong>NO</strong></td></tr></table><table class='tableauOK' border='0' cellpadding='0' cellspacing='0' id='TableOK'><thead><tr><th width='8px'>DATE</th><th width='400px'>VALUE</th><th>STATUS</th></tr><tr><td style='text-align:center'><strong>16/02/2011</strong></td><td><strong><a href='/TEST/page.html?id=761'>x=15</a></td><td><strong>ok</strong></td></tr><tr><td style='text-align:center'><strong>12/02/2011</strong></td><td><strong><a href='/TEST/page.html?id=220'>x=1000</a></td><td><strong>NO</strong></td></tr><tr><td style='text-align:center'><strong>01/02/2011</strong></td><td><strong><a href='/TEST/page.html?id=7'>x=1100</a></td><td><strong>OK</strong></td></tr></table>
<?php/*** a new dom object ***/$dom = new domDocument;/*** load the HTML into the object ***///$dom->loadHTML($html);@$dom->loadHTMLFile($html);/*** discard white space ***/$dom->preserveWhiteSpace = false;/*** the table by its tag name ***/$tables = $dom->getElementsByTagName('table');/*** get all rows from the table ***/$rows = $tables->item(0)->getElementsByTagName('tr');/*** loop over the table rows ***/foreach ($rows as $row){/*** get each column by tag name ***/$cols = $row->getElementsByTagName('td');/*** echo the values ***/echo '<hr />';}?>
