In questo mini-tutorial vedremo come sia possibile inviare email in ASP. Ci concentreremo principalmente sul codice ASP , visto che abbiamo già visto in questo articolo come sia possibile effettuare i controlli sui campi del form con Javascript.

Vediamo nel dettaglio il codice da utilizzare:

<%

‘Variabile che useremo per memorizzare il messaggio di avvenuto invio con successo
mailOK = “”

‘Nelle ipotesi si utilizzare la stessa pagina sia per la compilazione che per la gestione dell’invio,
‘utilizziamo questo controllo per discriminare i due casi: se il valore dell’oggetto DOM subject
‘è uguale ad invia ci troviamo nel caso di invio email, altrimenti siamo nel caso di compilazione
If request(“Subject”)=”Invia” then

‘creiamo l’oggetto CDO
Set objMail = CreateObject(“CDO.Message”)

‘Riceviamo attreverso la request i valori dei campi del form
campo1 = request(“camp1″)
campo2 = request(“camp2″)
campo3 = request(“camp3″)
……
msg = request(“msg”)

‘Nella variabile body memorizziamo il codice html che andrà a creare la nostra mail:
‘dunque il destinatario del nostro messaggio riceverà una mail in formato html
body = “<html><body> Campo 1″&camp1&”<br /><strong>Campo2:</strong> “&camp2

body = body + “<br /><strong>Messaggio:</strong> ” & msg &”</body></html>”

‘Con questa istruzione indichiamo che il corpo della mail deve essere interpretato come codice HTML
objMail.HTMLBody = body

‘Qui indichiamo la casella di posta in cui deve essere recapitato il messaggio
objMail.To = “vostramail@vostramail.com”

‘Questa invece è la mail del mittente, quella indicata normalmente nel form
objMail.From = request(“email”)

‘Assegnamo un oggetto alla mail
objMail.Subject = “Oggetto mail – VostroSito.com”

‘Con questa istruzione procediamo all’invio effettivo della mail
objMail.Send

‘Eliminiamo l’oggetto CDO che abbiamo precedentemente creato
set objMail = nothing

‘Assegnamo alla variabile mailOK il messaggio da visualizzare per l’invio della mail avvenuto con successo
mailOK = “<br /><strong>E-mail inviata correttamente!!</strong><br />”
End If
%>

CONTENUTO PAGINA

‘Stampiamo dove preferiamo il messaggio di successo invio mail: se ci troviamo nel caso di compilazione del form, ovviamente viene stampata ‘una stringa vuota
<% response.write( mailOk ) %>

CONTENUTO PAGINE
In questo modo è possibile, in una sola pagina ASP implementare un semplice form che invia mail in formato HTML. Ricordiamo che è sicuramente il caso di aggiungere i dovuti controlli ai campi, e per chi intendesse farlo con Javascript, può trovare la nostra guida in questo articolo.



Qualche tempo fa, abbiamo visto come leggere un feed RSS in PHP. In questo articolo vederemo come leggere non solo i feed, ma qualsiasi file .xml in ASP. Il codice da utilizzare è il seguente:

‘Questo è il link del foglio xml che vogliamo leggere
URLToRSS = “link_del_feed”

‘Questa comando serve per rielaborare un documento XML RSS e RDF fornendo in output un documento HTML
url=request( URLToRSS )

‘ Viene creato oggetto DOM XML
Set objXML = Server.CreateObject(“msxml2.DOMDocument.3.0″)
objXML.async = false
objXML.setProperty “ServerHTTPRequest”, True

‘ Ora è necessariovalidare il documento XML
objXML.validateOnParse = false ‘true

‘ Non conserviamo spazi e carichiamo il nostro file .xml
objXML.preserveWhiteSpace = false
blnLoaded = objXML.Load( URLToRSS )

‘Se l’ .xml risultato vuoto stampiamo un messaggio appropriato……
If Not blnLoaded Then
Response.write “Non vi sono contenuti da visualizzare”
Else
‘…altrimenti iniziamo l’analisi del file .xml dal primo elemento FirstElement
set objNodeList = objXML.getElementsByTagName(“FirstElement”)

‘Eseguiamo un ciclo for per scendere in profondità nell’analisi del file, partendo da FirstElement
For Each objNode In objNodeList
‘Recuperiamo il valore di un eventuale attributo
pid = objNode.GetAttribute( “Attribute” )

‘ L’analisi prosegue sempre più in profondità: infatti eseguiamo un altro ciclo for per visionare sotto elementi
For Each objNode2 In objNode.childNodes

Select Case objNode2.nodeName
Case “el1″
html = html + “nostro codice html”
Case “el2″
html = html + “altro codice html”
‘ Se un elemento ha sotto elementi, eseguiamo un for interno per analizzare i sotto nodi
For Each objNode3 In objNode2.childNodes
html = html + “sempre altro codice html”
Next
End Select
Next
Next
‘Stampiamo il codice html
Response.Write ( html )

‘Cancelliamo l’oggetto che abbiamo creato
set objNodeList = Nothing

End if

I commenti inseriti nel codice dovrebbero essere sufficienti per spiegare i vari passaggi necessari per leggere e formattare un file .xml in ASP . In breve, vengono “letti” tutti i nodi del file .xml che ci interessano, utilizzando cicli for per scendere n profondità e poter così leggere sotto-nodi. La formattazione viene inserita nella variabile html, che ad ogni lettura aggiorniamo con il nuovo contenuto. In conclusione è sufficiente stampare tale variabile per generare il codice html che permette una visualizzazione più flessibile e grafica accattivante per il nostro file .xml .



Per chi amministra server linux, può essere molto utile monitorare la larghezza di banda utilizzata, soprattutto per quelle macchine che gestiscono parecchi domini. Può succedere in questi casi, che vi siano dei picchi di banda, ed è molto importante capirne i motivi: ecco perchè è così importante conoscere ed imparare ad usare uno strumento come bwmon .

Questa utility legge i file /proc/net/dev e /proc/uptime per stampare a video la banda usata, anche determinati archi di tempo selezionati dall’utente, il valore massimo da quando è stato inizializzato il tool ed anche la media della banda utlizziata dall’ultimo reboot.

Il software necessario è reperibile al seguente link.

L’installazione è semplicissima e segue la classica compilazione. Per compilare, ci posizioniamo all’interno della cartella in cui abbiamo “unzippato” il file scaricato e digitiamo il comando make:

$ make

a questo punto possiamo installare il tool, digitando il comando:

$ make install

e bwmon è pronto per iniziare le sue analisi. Vi consigliamo di osservare l’help che fornisce il tool, raggiungibile con il comando bwmon -h:

$ ./bwmon -h

Linux Network Bandwidth Monitor $Revision: 1.3 $
by Kimmo Nupponen (kimmoon@users.sourceforge.net)
$Date: 2002/05/08 06:33:09 $

usage: ./bwmon [-b] [-h] [-a] [-m] [-u seconds]
-a Print bandwidth utiliasation in Kbytes rather than Kbits. The default
is to use Kbits
-a Print also average bandwidth since last boot per interface
-m Print maximum bandwidth since launch of this utility
-h Print this help message
-u Update timeout (integer value)

Use <space-bar> to refresh the screen before update timeout expires
Use ‘q’ or ‘Q’ to exit this utility

Questo è l’output che visualizzerà l’help. Ora possiamo finalmente iniziare le nostre analisi, appoggiandoci a questo comodo e preciso strumento.