Newsgroup: it.comp.www.php
Titolo: [PHP+XPath:] Problema di Impaginazione risultato

Ciao a tutti ragazzi,
non riesco a impaginare il risultato della query applicata con XPath
dentro il php.
Sapete dirmi come posso fare..vi giuro che le ho provate tutte!!!!
Pensate che l'output viene visualizzato così:
Graph Drawing Algorithm Engineering Research Group
http://www.dia.uniroma3.it/research/ACG.html
http://www.web.dia.uniroma3.it/
 
http://www.uniroma3.it
 1 netkit
Invece lo voglio così, perchè voglio costruirci una tabella sopra:
Graph Drawing
Algorithm Engineering Research Group
http://www.dia.uniroma3.it/research/ACG.html
http://www.web.dia.uniroma3.it/
http://www.uniroma3.it
1
netkit
Codice php:
<?php
    $real_path = realpath("./files/database/database.xml");
    if(!$domdb = domxml_open_file($real_path)){
      die("Error while parsing the document");
      }
    else {
        echo "<CENTER><H3>Xpath Test execute.</H3></CENTER>";
    }
    $xpath = $domdb->xpath_new_context();
    xpath_register_ns($xpath,
'my',"
http://www.dia.uniroma3.it/~volpi/files/database
");
?>
<?php
  $query = "/my:WebSite/my:ResearchGroup[child::my:NameGroup='Graph
Drawing']";
  $xpath_nodeset = $xpath->xpath_eval($query);
  $names = array();
  foreach ($xpath_nodeset->nodeset as $iterator) {
    $names[] = $iterator->get_content();
}
   foreach($names as $i){
     echo $i;
     echo "<br>";
}
?>
Ho provato a mettere vari tag nell'html va in vano e sono sicuro della
correttezza del codice.
grazie anticipatamente
Saluti Simone

se faccio un print_r($it); mi dice stampa così:
Array ( [0] => domelement Object ( [type] => 1 [tagname] =>
ResearchGroup [0] => 9 [1] => 9126160 ) )
se non sbaglio significa che l'array è formato da un solo
elemento??!!! array[0]?
Simone V. ha scritto:


 grazie anticipatamente
Prova a incollare il codice html della pagina vista dal browser
--
f 

Ciao fabio, grazie come sempre per il tuo tempo e le tue risposte!
guarda, visto dal browser l'html generato si presenta così:
<TR><TD> <BR>
	Graph Drawing
	Algorithm Engineering Research Group
 
http://www.dia.uniroma3.it/research/ACG.html
 
http://www.web.dia.uniroma3.it/
 
http://www.uniroma3.it
	1
	netkit
	about netkit
<BR></TD></TR>
	</TABLE>
Se è ti è utile tutta la pagina web dimmelo che la posto.
mi sembra giusto il codice ma il problema è come se dalla query
tirasse fuori una sola stringa?! mi sbaglio,o concordi?
il fatto dell'array [0] non significa che è formato daun solo
elemento?
Saluti
Simone V. ha scritto:


elemento?
Se fai la getcontent ottieni tutto il contenuto come stringa.
Devi usare le funzioni del dom (getAttribute, getElementByTagName, etc)
per esplorare i risultati e pescare le parti di tuo interesse,
o usare distinte espressioni xpath che ritornano i singoli elementi,
per poterle poi formattare a piacimento.
Rinnovo il mio consiglio di utilizzare xsl, magari chiedi al tuo
relatore se č possibile installare l'estensione: č lo strumento
ideale per fare quello di cui hai bisogno.
--
f 

 relatore se è possibile installare l'estensione: è lo strumento


metterlo dentro il php?
Si, ma non ha alcun senso, visto che in xsl peschi i nodi proprio
usando xPath.
Si usa xsl per evitare l'approccio procedurale, un ibrido è insensato
e ti comporterebbe un flusso del tipo
xpath > file xml dei risultati > xsl
che ha realmente poco senso.
--
f