SORGENTI DEI DOCUMENTI ASP NB: ogni sorgente comincia con il simbolo <% e termina con il simbolo %> ************************************************************************************ CODICE SORGENTE DELLA PAGINA "notizie-visualizzazione.asp" <% 'Carica documento XML set xml = Server.CreateObject("Microsoft.XMLDOM") xml.async = false xml.load(Server.MapPath("notizie.xml")) 'Carica documento XSL set xsl = Server.CreateObject("Microsoft.XMLDOM") xsl.async = false xsl.load(Server.MapPath("notizie-stile.xsl")) 'Esegui la trasformazione Response.Write(xml.transformNode(xsl)) %> ************************************************************************************ CODICE SORGENTE DELLA PAGINA "notizie-inserimento.asp" <% 'Questa pagina asp apre un documento XML sul server, ne modifica il contenuto in base ai parametri inseriti dall'utente e lo sovrascrive 'Lettura dei parametri passati dal modulo (Form) nella pagina html "notizie-modulo.html" set parametro1 = Request.Form("title") set parametro2 = Request.Form("text") set parametro3 = Request.Form("date") set parametro4 = Request.Form("link") 'Apertura del documento XML: generazione di un oggetto DOM set documentoXml = Server.CreateObject("Microsoft.XMLDOM") documentoXml.async = false documentoXml.load(Server.MapPath("notizie.xml")) 'Individuazione della radice del documento XML: uso di sintassi DOM set rad = documentoXml.documentElement 'Aggiunta di un nuovo elemento notizia e degli elementi figli (titolo, testo, data, link): uso di sintassi DOM 'Creazione dell'elemento "notizia" set nuovaNotizia = documentoXml.createElement("notizia") 'Creazione dell'elemento "titolo" e assegnazione del rispettivo valore set nuovoTitolo = documentoXml.createElement("titolo") set valoreTitolo = documentoXml.createTextNode(parametro1) nuovoTitolo.appendChild(valoreTitolo) 'Creazione dell'elemento "testo" e assegnazione del rispettivo valore set nuovoTesto = documentoXml.createElement("testo") set valoreTesto = documentoXml.createTextNode(parametro2) nuovoTesto.appendChild(valoreTesto) 'Creazione dell'elemento "data" e assegnazione del rispettivo valore set nuovaData = documentoXml.createElement("data") set valoreData = documentoXml.createTextNode(parametro3) nuovaData.appendChild(valoreData) 'Creazione dell'elemento "collegamento" e assegnazione del rispettivo valore set nuovoCollegamento = documentoXml.createElement("collegamento") set valoreCollegamento = documentoXml.createTextNode(parametro4) nuovoCollegamento.appendChild(valoreCollegamento) 'Inserimento degli elementi "titolo", "testo", "data" e "collegamento" all'interno della struttura come figli dell'elemento "notizia" nuovaNotizia.appendChild(nuovoTitolo) nuovaNotizia.appendChild(nuovoTesto) nuovaNotizia.appendChild(nuovaData) nuovaNotizia.appendChild(nuovoCollegamento) 'Inserimento degll'elemento "notizia" all'interno della struttura come figlo dell'elemento radice rad.appendChild(nuovaNotizia) 'Salvataggio del documento XML modificato (è richiesto il percorso assoluto del file sulla macchina host: un url non viene accettato) documentoXml.Save(Server.MapPath("notizie.xml")) 'Stampa a monitor di un messaggio di conferma per l'avvenuto inserimento Response.Write("Inserimento effettuato") %> ************************************************************************************ CODICE SORGENTE DELLA PAGINA "notizie-azzeramento.asp" <% 'Cancellazione del file XML "notizie.xml" esistente set fs=Server.CreateObject("Scripting.FileSystemObject") set f=fs.GetFile(Server.MapPath("notizie.xml")) f.Delete set f=nothing set fs=nothing 'Creazione di un nuovo documento XML: generazione di un oggetto DOM set documentoXml = Server.CreateObject("Microsoft.XMLDOM") documentoXml.async = false documentoXml.load(Server.MapPath("notizie.xml")) 'Aggiunta dell'elemento "notizie" come elemento radice: uso di sintassi DOM set nuovoNotizie = documentoXml.createElement("notizie") documentoXml.appendChild(nuovoNotizie) 'Creazione ed inserimento nella struttura dell'intestazione del documento (Processing instruction) Set pInst = documentoXml.createProcessingInstruction("xml","version='1.0' encoding='ISO-8859-1'") documentoXml.insertBefore pInst, documentoXml.childNodes(0) 'Salvataggio del documento XML ricreato documentoXml.Save(Server.MapPath("notizie.xml")) 'Stampa a monitor di un messaggio di conferma per l'avvenuto azzeramento Response.Write("Azzeramento effettuato") %>