bom vou deixar uma solução interessante que vale ter antes de rabiscar um projeto universal, pois sempre que deixamos um codigo disponivel cmo free ou programamos um sistema que venderemos para clientes de diferentes provedores, então vale ter essa funciton, pois nem todos provedores poderão praticar o mesmo componente que você está acostumado a usar !
Este código roda em Windows 2000/NT/XP/ME/98 e servidores UNIX-LINUX com chilli ! ASP
Crie um arquivo config.asp
e lá configure as seguintes strings:
CfgHost = "smtp.seu_provedor.com.br" Aqui coloque seu provedor
CfgComponente = "seu_componente" Aqui coloque o compenente que está instalado no seu provedor ex: ASPMAIL, CDONTS, ETC..
Application("Host") = CfgHost
Application("Componente") = CfgComponente
Pronto seu config já está configurado, não esqueça de carregar como includeFile esses dois arquivos na pagina que ultilizará envio de email.
Agora crie o arquivo FctEmail.asp e coloque o codigo abaixo
<%
Function Enviar_Email(Host,ComponenteTipo,Email,NomeEmail,ParaEmail,Assunto,Mensagem)
Select Case Componente
Case "AspMail"
on error resume next
Set eObjMail = Server.CreateObject("SMTPsvg.Mailer")
eObjMail.FromName = NomeEmail
eObjMail.FromAddress = Email
eObjMail.RemoteHost = Host
eObjMail.AddRecipient "", ParaEmail
eObjMail.Subject = Assunto
eObjMail.ContentType = "text/html"
eObjMail.BodyText = Mensagem
eObjMail.SendMail
Set eObjMail = nothing
Case "AspEmail"
on error resume next
Set eObjMail = Server.CreateObject("Persits.MailSender")
eObjMail.Host = Host
eObjMail.From = Email
eObjMail.FromName = NomeEmail
eObjMail.AddReplyTo Email
eObjMail.AddAddress ParaEmail
eObjMail.Subject = Assunto
eObjMail.isHTML = true
eObjMail.Body = Mensagem
eObjMail.Send
Set eObjMail = nothing
Case "AspQmail"
on error resume next
Set eObjMail = Server.CreateObject("SMTPsvg.Mailer")
eObjMail.QMessage = 1
eObjMail.FromName = NomeEmail
eObjMail.FromAddress = Email
eObjMail.RemoteHost = Host
eObjMail.AddRecipient "", ParaEmail
eObjMail.Subject = Assunto
eObjMail.BodyText = Mensagem
objNewMail.SendMail
Set eObjMail = nothing
Case "CDONTS"
on error resume next
Set eObjMail = Server.CreateObject("CDONTS.NewMail")
eObjMail.to = ParaEmail
eObjMail.from = NomeEmail & "<" & Email & ">"
eObjMail.subject = Assunto
eObjMail.Importance = 1
eObjMail.BodyFormat = 0
eObjMail.MailFormat = 0
eObjMail.body = Mensagem
eObjMail.send
Set eObjMail = nothing
End Select
End Function
%>
Agora no arquivo que você enviará o email, ex: Formulário de contato você deve aplicar o seguinte codigo da function, ou seja, você não vai precisar ficar alterando o tipo de componente mais quando seu trabalho for vendido a um cliente.
Ao invé de colocar Set blá bla bla Server.CreateObject(la la la la ) e tudo você vai apenas inserir essa linha de comando:
Pergunta
acid_burn
Ae pessoal tudo bem,
bom vou deixar uma solução interessante que vale ter antes de rabiscar um projeto universal, pois sempre que deixamos um codigo disponivel cmo free ou programamos um sistema que venderemos para clientes de diferentes provedores, então vale ter essa funciton, pois nem todos provedores poderão praticar o mesmo componente que você está acostumado a usar !
Este código roda em Windows 2000/NT/XP/ME/98 e servidores UNIX-LINUX com chilli ! ASP
Crie um arquivo config.asp
e lá configure as seguintes strings:
CfgHost = "smtp.seu_provedor.com.br" Aqui coloque seu provedor
CfgComponente = "seu_componente" Aqui coloque o compenente que está instalado no seu provedor ex: ASPMAIL, CDONTS, ETC..
Application("Host") = CfgHost
Application("Componente") = CfgComponente
Pronto seu config já está configurado, não esqueça de carregar como includeFile esses dois arquivos na pagina que ultilizará envio de email.
Agora crie o arquivo FctEmail.asp e coloque o codigo abaixo
<%
Function Enviar_Email(Host,ComponenteTipo,Email,NomeEmail,ParaEmail,Assunto,Mensagem)
Select Case Componente
Case "AspMail"
on error resume next
Set eObjMail = Server.CreateObject("SMTPsvg.Mailer")
eObjMail.FromName = NomeEmail
eObjMail.FromAddress = Email
eObjMail.RemoteHost = Host
eObjMail.AddRecipient "", ParaEmail
eObjMail.Subject = Assunto
eObjMail.ContentType = "text/html"
eObjMail.BodyText = Mensagem
eObjMail.SendMail
Set eObjMail = nothing
Case "AspEmail"
on error resume next
Set eObjMail = Server.CreateObject("Persits.MailSender")
eObjMail.Host = Host
eObjMail.From = Email
eObjMail.FromName = NomeEmail
eObjMail.AddReplyTo Email
eObjMail.AddAddress ParaEmail
eObjMail.Subject = Assunto
eObjMail.isHTML = true
eObjMail.Body = Mensagem
eObjMail.Send
Set eObjMail = nothing
Case "AspQmail"
on error resume next
Set eObjMail = Server.CreateObject("SMTPsvg.Mailer")
eObjMail.QMessage = 1
eObjMail.FromName = NomeEmail
eObjMail.FromAddress = Email
eObjMail.RemoteHost = Host
eObjMail.AddRecipient "", ParaEmail
eObjMail.Subject = Assunto
eObjMail.BodyText = Mensagem
objNewMail.SendMail
Set eObjMail = nothing
Case "CDONTS"
on error resume next
Set eObjMail = Server.CreateObject("CDONTS.NewMail")
eObjMail.to = ParaEmail
eObjMail.from = NomeEmail & "<" & Email & ">"
eObjMail.subject = Assunto
eObjMail.Importance = 1
eObjMail.BodyFormat = 0
eObjMail.MailFormat = 0
eObjMail.body = Mensagem
eObjMail.send
Set eObjMail = nothing
End Select
End Function
%>
Agora no arquivo que você enviará o email, ex: Formulário de contato você deve aplicar o seguinte codigo da function, ou seja, você não vai precisar ficar alterando o tipo de componente mais quando seu trabalho for vendido a um cliente.
Ao invé de colocar Set blá bla bla Server.CreateObject(la la la la ) e tudo você vai apenas inserir essa linha de comando:
<%
Enviar_Email Application("Host"), Application("Componente"), var_email, var_nome, var_email_para, var_assunto, var_mensagem
%>
Criei esta função para o código de um e-commerce que desenvolvi, o www.buyzone.com.br e até hj não deu nenhum erro !
Fácil né !!
Um abraço.
Link para o comentário
Compartilhar em outros sites
13 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.