¿Qué es AspEmail?
AspEmail es un componente realizado por la empresa Persits Software Inc. que permite el envío de emails a través de las páginas web ASP. Soporta múltiples recipientes, CC, BCC, archivos adjuntos, formato html, imágenes, entre otros.
Requerimientos
Para hacerlo funcionar se necesita instalar sobre plataforma Windows (95/98/Nt/2000) y contar con un servidor SMTP para el envío de los emails. También hay requerimientos específicos como: Internet Information Server 3.0, 4.0 o 5.0 y Active Server Pages, o Personal Web Server en cualquier versión, o hasta Visual Basic, Visual C++, o cualquier otro paquete con soporte de componentes COM.
Instalación
Para bajar el componente debemos dirigirnos a
www.aspemail.com/download.html y descargamos la versión que se ajuste a nuestras necesidades.
Al ejecutar el archivo Aspemail.exe se iniciará el programa de instalación del mismo, en donde entre otras cosas elegimos el directorio en donde instalar el componente, en nuestro caso elegimos c:\AspEmail. Una vez instalada se habrá copiado a nuestro sistema la librería correspondiente. Para registrarla solo ejecuta lo siguiente en el DOS o en Ejecutar del menú Inicio:
c:\regsvr32 c:\AspEmail\Bin\AspEmail.dll
Junto a AspEmail viene incluida una versión de evaluación del componente AspUpload, el cual permite subir archivos hacia el servidor. Para registrar el AspUpload ejecuta de la misma forma que el anterior:
c:\regsvr32 c:\AspEmail\Bin\AspUpload.dll
AspUpload no necesita que esté registrado el AspEmail.
Usando AspEmail
Como en todos los componentes que forman parte de una página Asp es necesario crear el objeto que se va a utilizar:
<%
...
Set Mail = Server.CreateObject("Persits.MailSender")
...
%>
Luego se crea la instancia del objeto:
Para enviar emails desde las páginas ASP se debe especificar el servidor SMTP a utilizar:
Mail.Host = "smtp.tuservidor.com"
Mail.Port = 25 ' Opcional: El puerto predeterminado es 25
Luego se debe especificar las direcciones de envío y en forma opcional, el nombre:
Mail.AddAddress "
[email protected]", "WebExperto"
Mail.AddCC "
[email protected]", "Fabian Muller" ' El campo CC, Bcc, son opcionales
Se usan las propiedades Subject y Body para especificar el Asunto y Cuerpo del mensaje, respectivamente. El cuerpo puede ser en modo texto o modo html, en este caso se declara la propiedad IsHTML con el valor True.
Mail.Subject "Consulta desde la pagina"
Mail.Body "Aquí iría el cuerpo del mensaje, el cual llegara a los recipientes antes mencionados"
O en formato Html:
Mail.Subject "Consulta desde la pagina"
Mail.Body "<html><body>Se pueden especificar las etiquetas html, como por ejemplo texto en <b>negrita</b> o <i>cursiva</i> y hasta tablas.</body></html>"
Mail.IsHTML = True
Para enviar un archivo adjunto se utiliza el método AddAttachement. Se debe especificar la ruta completa del archivo a adjuntar:
Mail.AddAttachement "c:\directorio\archivo.ext"
Y por último hay que enviar el mensaje, con el método Send. Se puede especificar, que en caso de producirse un error, continúe el programa y muestre el error:
On Error Resume Next
Mail.Send
If Err <> 0 Then
Response.Write "Ha ocurrido el siguiente error: " &Err.Description
End If
Ejemplo de envío de email a partir de un formulario
Un ejemplo del uso que se le puede dar al AspEmail es el de envío de formularios. En el siguiente ejemplo veremos un formulario y en archivo sendmail.asp que procesará el formulario y enviará el email correspondiente:
<form method="POST" action="sendmail.asp">
<p>De:<br>
<input type="text" name="de" size="20"></p>
<p>Para:<br>
<input type="text" name="para" size="20"></p>
<p>Asunto:<br>
<input type="text" name="asunto" size="20"></p>
<p>Mensaje:<br>
<textarea rows="2" name="mensaje" cols="20"></textarea></p>
<p><input type="submit" value="Enviar" name="enviar"></p>
</form>
Sendmail.asp
<%
'Recogemos los datos del formulario
de = Request.Form("de")
para = Request.Form("para")
mensaje = Request.Form("mensaje")
asunto = Request.Form("asunto")
Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "mail.tusitio.com"
Mail.From = de
Mail.AddAddress para
Mail.Subject = asunto
'El mensaje en formato html
Mail.IsHTML = True
Mail.Body = "<HTML><BODY><p><font face=verdana size=2>De: "&de&"<br>Mensaje: "&mensaje&"<br><br></p><br>Enviado el "& Now() &"</font></BODY></HTML>"
On Error Resume Next
Mail.Send
If Err <> 0 Then
Response.Write "Ha ocurrido el siguiente error: " &Err.Description
End If
%>
Próximamente
Más adelante, escribiremos artículos sobre como enviar archivos adjuntos, utilizar con bases de datos, y también veremos el componente AspUpload.