Top 5 ASPCategoríasBuscador
|
Su dominio en 24 horas |
|||||||||||||||||||||||||
Estás en ASP |
Fecha: 14/01/2008 |
Utilizando el componente CDONTS vamos a enviar un correo electrónico desde ASP en nuestro servidor.
La forma de hacerlo es relativamente sencilla, de hecho, demasiado sencilla, ya que habría que mejorarla bastante. La idea es crear una página única que contenga un formulario html y una función ASP que nos envíe el email, luego vosotros ya la modificaréis a vuestro gusto.
El email se envía mediante SMTP validado, es importante remarcarlo ya que nuestros servidores de alojamiento requieren el envío validado para funcionar.
Pasemos a ver el código:
<%
If Request.ServerVariables("REQUEST_METHOD")="POST" Then
'ENVÍO DEL FORMULARIO DE CONTACTO
sch = "http://schemas.microsoft.com/cdo/configuration/"
Set cdoConfig = CreateObject("CDO.Configuration")
With cdoConfig.Fields
.Item(sch & "sendusing") = 2
'.Item(sch & "smtpserverpickupdirectory") = "C:inetpubmailrootpickup"
.Item(sch & "smtpserver") = "localhost"
.Item(sch & "smtpserverport") = 25
.Item(sch & "smtpconnectiontimeout") = 40
.Item(sch & "smtpauthenticate") = 1
.Item(sch & "sendusername") = "La_dirección_de_correo_que_envía"
.Item(sch & "sendpassword") = "contraseña_del_correo"
.update
End With
Set MailObject = Server.CreateObject("CDO.Message")
Set MailObject.Configuration = cdoConfig
'MailObject.BodyFormat = 0
'MailObject.mailformat = 0
MailObject.From = "Dirección_Remitente"
MailObject.To = "Dirección_Destinataria"
MailObject.Subject = "Asunto_del_email"
Cuerpo = "Nombre: " & Request.Form("nombre") & "<br>"
Cuerpo = Cuerpo & "Email: " & Request.Form("email") & "<br>"
Cuerpo = Cuerpo & "Comentario: " & Request.Form("comentario") & "<br>"
MailObject.HTMLBody = Cuerpo
MailObject.Send
Set MailObject = Nothing
Set cdoConfig = Nothing
End If
%>
La línea "sendusername" es la encargada de indicar al servidor la cuenta de correo que necesitará para validar en el servidor SMTP.
La línea "sendpassword" es la contraseña de dicha cuenta de correo electrónico.
Los campos "From" y "To" son las direcciones de email de envío y recepción respectivamente, deben de ser direcciones válidas para que el código no lanze un error en pantalla.
La variable "Cuerpo" recoge los campos del formulario para luego pasarlos a "HTMLBody".
Ahora vemos la parte del formulario:
<form method="post" action="email.asp">
<table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>Nombre:</td>
<td><input name="nombre" type="text" /></td>
</tr>
<tr>
<td>Email:</td>
<td><input name="email" type="text" /></td>
</tr>
<tr>
<td valign="top">Comentario:</td>
<td><textarea name="comentario" cols="40" rows="5"> </textarea></td>
</tr>
<tr>
<td valign="top"></td>
<td><input name="Enviar" type="submit" value="Enviar" /></td>
</tr>
</table>
</form>
Como podemos observar, es un formulario normal y corriente.
Les dejo aquí el fichero para que puedan descargarlo y hacer pruebas en local, cualquier duda pueden utilizar los comentarios para preguntar.
|
| Lecturas: 1224 |
Fecha: 19/03/2008 |
|
| Algunas veces al enviar un correo electrónico, el servidor de correo del destinatario, puede devolvernos un mensaje con un error SMTP, indicándonos el motivo por el que nuestro correo no ha podido ser entregado. Descubre los errores mas comunes. | |
Fecha: 23/10/2007 |
|
| Existe en muchos servidores de correo un filtro para el correo Spam, que consiste en verificar la resolución inversa de un dominio, verificando la existencia de una entrada DNS de tipo PTR. Tu alojamiento web es de calidad, compuebalo. | |
| Comentarios de los Usuarios (2) |
Antonio Abad escribió: |
Fecha: 19/06/2008 19:30:58 |
PROBLEMAS CON FORM ENVIO DE EMAIL'SHola, antes de todo un saludo,pues bien, debo confesar que soy nuevo en esto de la programación y el manejo de algunos lenguajes, la cuestion es que tengo problemas con el form y el codigo que aqui proporvcinas para el envio de comentarios a un correo electronico, en la parte del "from" y "To" que es lo que especificamente va ahi?. o de donde mando a llamar el correo del remitente con el form. espero me haya dado a entender,,, y esperare tu respuesta podria dejarte mi correo. tony_x100pre_chivas@hotmail.com | |
Fercho escribió: |
Fecha: 10/07/2008 16:30:16 |
Una duda sobre el codigoQue tal buen día me podrias decir mas sobre este comentario que has hecho "La línea "sendusername" es la encargada de indicar al servidor la cuenta de correo que necesitará para validar en el servidor SMTP.". No se la mera verdad a que direccion se refiere. De antemano gracias | |