Visualizzazione dei risultati da 1 a 2 su 2

Discussione: Query Xpath

  1. #1

    Query Xpath

    Salve a tutti!
    Sto morendo dietro a questo file PHP da giorni ormai!
    L'errore ritornato è: Warning: Invalid expression in ***/query.php5 on line 18

    Il frammento di codice incriminato è questo:
    function controllaNodi($campo, &$index, &$array, &$root, &$tree)
    {
    // creo l'elemento DOMXpath generandolo dal file indice
    $xpath = new DOMXPath($index);
    // Poppo il valore dell'elemento da esaminare
    $valore = array_pop($array);
    // Scrivo la query Xpath
    $query = "//$campo\[contains(.,\"$valore\")\]/parent::\*";
    // Applico la query all'indice e ottengo gli elementi (libro) che combaciano con la mia ricerca
    $results = $xpath->query($query); <-questa è la linea 18!!!!
    // Ora aggiungo ognuno degli elementi al mio alberello
    for ($i = 0; $i < $results->length; $i++)
    {
    // scorro la domnodelist e per ogni elemento che incontro lo aggiungo al nuovo albero e lo elimino dall'indice
    $node = $results->item($i);
    $newnode = $tree->appendChild ($tree->importNode($node, true));
    $newnode = $tree->removeChild ($tree->importNode($node, true));
    }
    }

    La cosa assurda è che la stringa Xpath parrebbe essere corretta provandola con oxigen. In cosa sbaglio? c'è un "\" mancante da qualche parte? Oppure è la funzione query che non gestisce tutte le possibilità date da xpath?

    P.S. sostituendo la stringa Xpath con una più semplice come: $query = "/index/libro/autore"; non da nessun errore.

    Ringrazio in anticipo chiunque sarà in grado di aiutarmi

  2. #2
    UP!

    Scusate se stresso ma è veramente importante! E non riesco a trovare soluzioni al riguardo!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.