![]() |
![]() |
|
| Condividi questo contenuto nei Social Network: |
|
Tweet |
|
|
|
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito. |
||||
|
|||||||||
|
|
LinkBack | Strumenti di discussione |
|
|
#1 (permalink) |
|
Esperto
Data di registrazione: May 2007
Ubicazione: Pesaro
Messaggi: 568
|
[Pillola] Leggere il contenuto di un file XML
Se avete problemi a ricavare informazioni da un file XML, ecco a voi un semplice script PHP che, attraverso l'utilizzo della classe DOM, è in grado di eseguire un parsing del file XML.
Lo script legge il file e ne crea un albero dalla quale è possibile estrapolare i nomi di un nodo, il valore associato e, se ci sono, gli attributi in esso specificati. Ecco il codice PHP contenente la funzione per il parsing del file XML. Questo è un codice proposto da Gorka (Moderatore di questo Forum), con l'aggiunta di una spiegazione del funzionameto ed di un controllo per impedire errori nell'apertura di un file XML non valido. Codice PHP:
Codice HTML:
<?xml version="1.0"?> <database> <utente> <nome>Andrea</nome> <user>Sups</user> <anno_nascita>1985</anno_nascita> </utente> <utente> <nome>Mario</nome> <cognome>De Rossi</cognome> <residenza via="Acaso, 15" citta="Pesaro">Italia</residenza> </utente> </database> ![]() A qualcuno può tornare utile una cosa del genere P.S: Nel codice XML, ogni riferimento a fatti o persone esistenti è puramente casuale! ![]() Ciao! ![]() |
|
__________________
Now is the time for all good men to come to the aid of their country! Ultima modifica di Sups : 09-11-07 19:25. |
|
|
|
|
|
|
|
|
#3 (permalink) |
|
Esperto
Data di registrazione: May 2007
Ubicazione: Pesaro
Messaggi: 568
|
Ciao ceccus, speriam di ricevere feedback positivi
Ci son tre motivi se non arriva niente: 1) A nessuno interessa lo script (Probabile) 2) Nessuno ha ancora provato lo script (Probabile) 3) Il PC è imploso dopo il primo test dello script (Forse )Ciao! |
|
__________________
Now is the time for all good men to come to the aid of their country! |
|
|
|
|
|
|
#7 (permalink) |
|
User
Data di registrazione: Nov 2007
Messaggi: 35
|
Questa cosa capita proprio a fagiolo!!!
Stavo cercando proprio oggi di realizzare un progetto in cui avevo bisogno dell'XML,ma il mio primo problema è questo: Warning: domdocument::domdocument() expects at least 1 parameter, 0 given in la riga a cui si riferisce è : $dom = new DOMDocument(); Perchè? P.S. Ho già abilitato l'estenzione necessaria! |
|
|
|
|
|
#8 (permalink) | |
|
Esperto
Data di registrazione: May 2007
Ubicazione: Pesaro
Messaggi: 568
|
Quote:
Codice PHP:
| |
|
__________________
Now is the time for all good men to come to the aid of their country! |
||
|
|
|
|
|
#9 (permalink) |
|
User Newbie
Data di registrazione: Nov 2007
Messaggi: 3
|
Ciao a tutti.
ho provato lo script per leggere il file xml con il Dom. Ma mi da il seguemte errore; Fatal error: Cannot redeclare xmltree() in C:\Program Files\EasyPHP 2.0b1\www\testXml.php on line 74 Come si può capire utilizzo la EasyPhp2.0 che utilizza la versione di Php 5. Come posso risolvere Grazie a tutti Ciao |
|
|
|
|
|
#12 (permalink) |
|
Moderatore
Data di registrazione: Jun 2005
Ubicazione: Lecce-Torino
Messaggi: 509
|
Ciao Dragone67,
E' un pò di tempo che non uso easyphp, ma penso che per attivare le estensione DOM basta seguire il modello generale: Mi sembra di aver capito che sei su win: tratto da http://it2.php.net/domxml ""Gli utenti Windows devono abilitare php_domxml.dll dal php.ini per potere utilizzare queste funzioni. In PHP 4 this DLL resides in the extensions/ directory within the PHP Windows binaries download. La DLL per questa estensione PECL può essere scaricata dalla pagina » PHP Downloads oppure da » http://pecl4win.php.net/ Inoltre, per potere utilizzare queste funzioni, occorre che una DLL aggiuntiva sia presente nella PATH del sistema. In PHP 4 questa DLL si trova nella directory dlls/. Il suo nome: Per PHP <= 4.2.0, è libxml2.dll. Per PHP >= 4.3.0, è iconv.dll. E dal PHP 5.0.0 iconv è compilata nell'eseguibile PHP per Windows, percui non vi è più bisogno di dll aggiuntive. "" dovrebbe esserti utile.. se poi c'è qualcuno che ha avuto esperienze dirette con easyphp aspettiamo.. |
|
|
|
|
|
#13 (permalink) | |
|
User
Data di registrazione: Nov 2007
Ubicazione: web/htdocs
Messaggi: 35
|
Quote:
Puoi darmi qualche consiglio? ciao | |
|
|
|
|
|
#14 (permalink) |
|
Esperto
Data di registrazione: May 2007
Ubicazione: Pesaro
Messaggi: 568
|
Ciao Sark, puoi utilizzare il parser xml per leggere tutti i nodi del file XML e salvi il contenuto in una tabella realizzata con l'uso di un array multidimensionale.
Successivamente leggi il contenuto della tabella e invii i dati al DB con apposite query. Oppure per limitare la complessità, appena letto il valore del nodo, lo invii direttamente al DB. Ciao! |
|
__________________
Now is the time for all good men to come to the aid of their country! |
|
|
|
|
|
|
#15 (permalink) | |
|
User
Data di registrazione: Nov 2007
Ubicazione: web/htdocs
Messaggi: 35
|
Quote:
a livello di concetto ho capito quello che mi hai detto di fare ma non lo so scrivere in php perchè non sono esperto. ciao! | |
|
|
|