Header di una mail in coldfusion


Chi non si è mai collegato ad un servizio di webmail? nessuno credo ormai,
diciamo che è utile, comodo se non si ha a portata di mano il proprio computer.
Con questo articoletto voglio spiegare come fare almeno la prima pagina di un webmail, con la sola possibilità
di leggere l’intestazione della mail.
L’articolo spunta fuori dalla guida in linea di coldfusion 4.5 ma è applicabile a tutte le versioni che
riconoscono il tag cfpop

La teoria:
Sintatticamente cfpop è abbastanza semplice e senza bisogno di molti parametri ci può aiutare al nostro scopo,
di seguito riporto la sintassi completa presa dalla guida in linea:

<cfpop SERVER="nome del server"
    PORT="porta del server"
    USERNAME="nomeutente"
    PASSWORD="password"
    ACTION="azione"
    NAME="nome della query"
    MESSAGENUMBER="numero"
    ATTACHMENTPATH="percorso"
    TIMEOUT="secondi"
    MAXROWS="numero"
    STARTROW="numero"
    GENERATEUNIQUEFILENAMES="booleano"

Analizziamo e vediamo come utilizzare l’azione getHeaderOnly:
Questo tipo di action ci permette di scaricare dal server specificato una lista di record
come se fosse una query come il tag <cfquery>
Possiamo quindi trattare la variabile specificata nell’opzione name= come una vera e propria query
quindi la nostra istruzione risulterà così composta:

<cfpop server="mail.mioserver.it" username="utente" password="pwd" action="getHeaderOnly" name="lista"&gt

A questo punto avremo nella variabile #lista# i messaggi nella nostra casella e-mail.
Quali sono i record della variabile lista? eccoli:

Campo Descrizione
date Data della mail
from Mittente della mail
messagenumber Numero identificativo della mail
replyTo Indirizzo per le risposte
subject Oggetto della mail
cc Indirizzi in copia conoscenza
to Destinatari della mail

Prima decevamo che era possibile trattare la variabile lista proprio
come una query ed infatti sono disponibili anche i soliti campi
di controlli quali:
  RecordCount: numero di record
nella variabile lista
  CurrentRow: numero della riga
attuale
  ColumnList: descrizione delle
colonne presenti nella variabil (in formato lista)

Utilizzando ora tutto quello che è stato scritto possiamo
scrivere uno script per la lettura dell’intestazione delle mail
presenti in dato account di un dato server.
Il codice è stato preso direttamente dalla guida in linea
di ColdFusion

<!--- This view-only example shows the use of CFPOP --->
<HTML>
<HEAD>
<TITLE>CFPOP Example</TITLE>
</HEAD>

<BODY>
<H3>CFPOP Example</H3>
<P>CFPOP allows you to retrieve and manipulate mail 
in a POP3 mailbox.  This view-only example shows how to 
create one feature of a mail client, allowing you to display
the mail headers in a POP3 mailbox.

<P>
<CFIF IsDefined("form.server ")>
<!--- make sure server, username are not empty --->
<CFIF form.server is not "" and form.username is not "">
     <CFPOP SERVER= "#server# " USERNAME=#UserName# PASSWORD=#pwd#
     ACTION= "GETHEADERONLY " NAME= "GetHeaders ">
     
     <H3>Message Headers in Your Inbox</H3>
     <P>Number of Records: 
     <CFOUTPUT>#GetHeaders.RecordCount#</CFOUTPUT></P>
     <UL>
     <CFOUTPUT QUERY="GetHeaders">
         <LI>Row: #CurrentRow#:  From: #From# -- Subject: #Subject#
     </CFOUTPUT>
    </UL>
</CFIF>
</CFIF>

<FORM ACTION= "cfpop.cfm " METHOD= "POST ">
  <P>Enter your mail server:
  <P><INPUT TYPE= "Text " NAME= "server ">
  <P>Enter your username:
  <P><INPUT TYPE= "Text " NAME= "username ">
  <P>Enter your password:
  <P><INPUT TYPE= "password " NAME= "pwd ">
  <INPUT TYPE= "Submit " NAME= "get message headers ">
</FORM> 

</BODY>
</HTML>       

Non è speciale e non fa nulla di particolare, ma visualizza
correttamente le intestazioni.

Header di una mail in coldfusion ultima modifica: 2003-09-10T00:00:00+00:00 da Enrico

Related Posts

Comments are closed.