Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    99

    File XML modifica nodo attraverso ricerca attributo

    Ciao a tutti,
    ho un problema nell'elaborare e modificare un file XML. Per l'esattezza il foglio ha diversi nodi con attributi specifici.
    Sono riuscito a visualizzare i dati caricando il file attraverso SimpleXML in questa maniera:
    Codice PHP:
    foreach($xml->ActualOrder->order as $item){
        
    print_r($item);            

    OutPut:
    codice HTML:
    SimpleXMLElement Object ( [@attributes] => Array ( [ID] => 84358520...
    SimpleXMLElement Object ( [@attributes] => Array ( [ID] => 84358521...
    SimpleXMLElement Object ( [@attributes] => Array ( [ID] => 84358522...
    SimpleXMLElement Object ( [@attributes] => Array ( [ID] => 84358523...
    Fin qui vedo correttamente i dati presenti.
    La mia intenzione è quella di modificare/cancellare/creare un determinato elemento che ha come chiave l'attributo ID, e qua come potete immaginare mi sto dannando...
    In buona sostanza dovrei fare:
    Codice PHP:
    if($xml->ActualOrder->order['ID']== $ID){
         echo 
    "trovato elemento, modifica";        
    } else {
         echo 
    "elemento non trovato, crealo!";

    Naturalmente $ID verrà passato tramite POST. Che devo fare?

    Ho fatto una prova modificando il ciclo in questa maniera, ma anche, se rende l'idea di quello che desidero fare è sbagliato...
    Codice PHP:
    foreach($xml->ActualOrder->order['ID'] as $item){
        
    print_r($item);    
        if(
    $item== $ID){
            echo 
    "trovato elemento, modifica";        
        } else {
            echo 
    "elemento non trovato, crealo!";
        }        

    Qualche dritta?
    Grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    99
    Aggiorno, credo di aver trovato la soluzione...
    Codice PHP:
            foreach($xml->ActualOrder->order as $ordID) {
                if(
    $ordID['ID'] == $ID) {
                    echo 
    "trovato elemento, modifica ".$ID;
                    break;
                } else {
                    echo 
    "elemento non trovato, crealo ".$ID;                
                }
            } 
    Ma è sorto un altro problema ossia, mi modifica/crea l'elemento per il numero di interazioni del ciclo...
    Dritte??

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 © 2025 vBulletin Solutions, Inc. All rights reserved.