Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

reinaldo polato

Envio de e-mail

Recommended Posts

e ai gente beleza

é assim a minha pagina de envio de e-mail não funciona ele aparece assim

 

o codigo é

 

envia.asp

<html>
<body>
<form name="frm1" method="POST" action="recebe_email.asp">
<table border="0" width="43%">
<tr>
<td width="13%"><strong>Para:</strong></td>
<td width="87%"><input type="text" name="to" size="32"></td>
</tr>
<tr>
<td width="13%"><strong>Assunto:</strong></td>
<td width="87%"><input type="text" name="subject" size="32"></td>
</tr>
<tr>
<td width="13%"><strong>Mensagem:</strong></td>
<td width="87%"><textarea rows="7" name="body" cols="43"></textarea></td>
</tr>
<tr>
<td width="13%"></td><a href="mailto:polatoreinaldo@gmail.com"></a><input type="submit" name="botaoEnviar" value="enviar">
</tr>
</table>
</form>
</body>
</html>
a outra pagina é

recebe_email.asp

<%
if request("botao") = "enviar" then
Dim objNewMail
Set objNewMail = Server.CreateObject("CDONTS.NewMail")
objNewMail.From = "email@seudominio.com.br"
objNewMail.To = request("to")
objNewMail.Subject = request("subject")
objNewMail.Body = request("body")
e=objNewMail.Send

if e then
Response.Write "Mensagem não enviada"
else
Response.Write "Mensagem enviada com sucesso"
end if
response.end
end if

%>
na primeiro pagina eu preencho os formularios e clico em enviar e na segunda pagina não acontece nada fica em branco

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se esta recuperando corretamente os dados nas variaveis, e uma dica , você pode utilizar o CDOSYS, pois o CDONTS, foi (descontinuado/atualizado) para o CDOSYS

 

 

exemplo

 

<%
strNome = Request.Form("nome")
strMail = Request.Form("email")

Set objCDO      = Server.CreateObject("CDO.Message") 
Set objCDOConf  = Server.CreateObject("CDO.Configuration") 
	With objCDOConf.Fields 
        .Item(cdoSendUsingMethod) = 2 
        .Item(cdoSMTPServer) = "mail-fwd" 
        .Item(cdoSMTPServerPort) = 25 
        .Item(cdoSMTPconnectiontimeout) = 10 
        .Update 
    End With
Set objCDO.Configuration = objCDOConf 
objCDO.From     = "email@dominio.com.br"
objCDO.To       = "email@dominio.com.br"
objCDO.Subject  = "Assunto"
objCDO.TextBody = "Conteudo"

On Error Resume Next
objCDO.Send
   	If Err.Number <> 0 Then
		msg = "No Ok"
	Else
		msg = "Ok"
	End If
Response.Write(msg)
Set objCDO     = Nothing  
Set objCDOConf = Nothing  
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai xanburzum beleza

eu tenho pra mim enviar por e-mail eu tenho que utilizar esse codigo

esse codigo está dando erro

ADODB.Fields (0x800A0BB9)

Os argumentos são incorretos, estão fora do intervalo aceitável ou estão em conflito.

 

eu mudei o codigo da pagina recebe_email por o codigo que voce me passou

o que eu tenho que fazer

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pela mensagem de erro, você está executando páginas diferente das citadas, pois é um erro com Recordset.

 

Verifique e poste novamente.

 

Obs. como o Xan disse, utilize CDOSYS ao invés de CDONTS.

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai Hargon beleza

aonde eu baixo o componente CDOSYS

ele é Pago ou gratuito

 

o meu codigo de envio de e-mail eu fiz a primeira pagina e nessa segunda está assim

 

<%

Para=Request.Form("Para")
Assunto=Request.Form("Assunto")
Mensagem=Request.form("Mensagem")

sch = "http://schemas.microsoft.com/cdo/configuration/" 

Set cdoConfig = Server.CreateObject("CDO.Configuration") 

cdoConfig.Fields.Item(sch & "sendusing") = 2 
cdoConfig.Fields.Item(sch & "smtpauthenticate") = 1 
cdoConfig.Fields.Item(sch & "smtpserver") = "smtp.gmail.com" 
'cdoConfig.Fields.Item(sch & "sendusername") = "meu e-mail@meuservidor.com.br 
'cdoConfig.Fields.Item(sch & "sendpassword") = "minhaSenha" 
cdoConfig.fields.update 

Set cdoMessage = Server.CreateObject("CDO.Message") 
Set cdoMessage.Configuration = cdoConfig 

cdoMessage.From = "meuEmail" 
cdoMessage.To = "Email enviado pra uma Pessoa" 
cdoMessage.Subject = "E-mail no CDOSYS ASP" 
cdoMessage.HTMLBody = "TESTE" 
cdoMessage.AutoGenerateTextBody = false 
cdoMessage.Send 

Set cdoMessage = Nothing 
Set cdoConfig = Nothing 

response.write "Sua mensagem fora enviada com sucesso!"

%>

ele da erro na linha

Tipo de erro:

(0x8004020E)

Não é possível modificar ou excluir um objeto que tenha sido adicionado com o uso do COM+ Admin SDK

/adv/recebe_email.asp, line 29

Compartilhar este post


Link para o post
Compartilhar em outros sites

CDOSYS já é instalado junto com o IIS no Windows Server.

 

O que você tem na linha 29?

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai Hargon beleza

aparece esse erro na linha 29

Tipo de erro:

(0x8004020E)

Não é possível modificar ou excluir um objeto que tenha sido adicionado com o uso do COM+ Admin SDK

/adv/recebe_email.asp, line 29

Compartilhar este post


Link para o post
Compartilhar em outros sites

<%

Para=Request.Form("Para")
Assunto=Request.Form("Assunto")
Mensagem=Request.form("Mensagem")

sch = "http://schemas.microsoft.com/cdo/configuration/" 

Set cdoConfig = Server.CreateObject("CDO.Configuration") 

cdoConfig.Fields.Item(sch & "sendusing") = 2 
cdoConfig.Fields.Item(sch & "smtpauthenticate") = 1 
cdoConfig.Fields.Item(sch & "smtpserver") = "smtp.gmail.com" 
'cdoConfig.Fields.Item(sch & "sendusername") = "meu e-mail@meuservidor.com.br 
'cdoConfig.Fields.Item(sch & "sendpassword") = "minhaSenha" 
cdoConfig.fields.update 

Set cdoMessage = Server.CreateObject("CDO.Message") 
Set cdoMessage.Configuration = cdoConfig 

cdoMessage.From = "meuEmail" 
cdoMessage.To = "Email enviado pra uma Pessoa" 
cdoMessage.Subject = "E-mail no CDOSYS ASP" 
cdoMessage.HTMLBody = "TESTE" 
cdoMessage.AutoGenerateTextBody = false 
cdoMessage.Send 

Set cdoMessage = Nothing 
Set cdoConfig = Nothing 

response.write "Sua mensagem fora enviada com sucesso!"

%>
esse é codigo

está com erro na linha 29

Tipo de erro:

(0x8004020E)

Não é possível modificar ou excluir um objeto que tenha sido adicionado com o uso do COM+ Admin SDK

/adv/recebe_email.asp, line 29

 

essa linha 29 o erro está aqui

cdoMessage.Send

nesse comando

valeu pela ajuda de todos vocês ai

Compartilhar este post


Link para o post
Compartilhar em outros sites

verifique se as config estaun corretas...

veja tb se esta corretamente instalado, você pode re-instalar novamente.

Verifique se você está passando um endereço válido de e-mail. Id mail inválido pode causar este erro

 

Tente usar um valor SendUsing de 1 (pickup) ao invés de 2 (port). Por exemplo a seguinte linha:

 

. Item (cdoSendUsingMethod) = cdoSendUsingPort

 

Torna-se

 

. Item (cdoSendUsingMethod) = cdoSendUsingPickup

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai xanburzum beleza

é assim eu coloquei assim

 

na minha pagina recebe_email.asp

ficou assim

 

<%

Para=Request.Form("Para")
Assunto=Request.Form("Assunto")
Mensagem=Request.form("Mensagem")



sch = "http://schemas.microsoft.com/cdo/configuration/" 

Set cdoConfig = Server.CreateObject("CDO.Configuration") 


cdoConfig.Fields.Item(sch & "sendusing") = 2 
cdoConfig.Fields.Item(sch & "smtpauthenticate") = 1 
cdoConfig.Fields.Item(sch & "smtpserver") = "smtp.gmail.com" 
cdoConfig.Fields.Item(sch & "sendusername") = "meuemail@meuservidor.com" 
cdoConfig.Fields.Item(sch & "sendpassword") = "Minha Senha" 
cdoConfig.fields.update 

Set cdoMessage = Server.CreateObject("CDO.Message") 
Set cdoMessage.Configuration = cdoConfig 

cdoMessage.From = "meue-mail@meuservidor.com" 
cdoMessage.To = "enviarE-mail pra alguma pessoa" 
cdoMessage.Subject = "E-mail no CDOSYS ASP" 
cdoMessage.HTMLBody = "TESTE" 
cdoMessage.AutoGenerateTextBody = false 

Set cdoMessage = Nothing 
Set cdoConfig = Nothing 

response.write "Sua mensagem fora enviada com sucesso!"

%>

 

ai é o seguinte eu preenchi o formulario da primeira pagina que é Para, Assunto e Mensagem ai eu clico em enviar mais so que não vai para o email esse formulario que eu preenchi ai quando eu clico em enviar aparece assim Sua mensagem fora enviada com sucesso

como eu faço pra esse formulario preenchido ir para o meu e-mail

valeu pela ajuda de todos voces

Compartilhar este post


Link para o post
Compartilhar em outros sites

ja isso acontecer em casos onde o server esta apresentando uma instabilidade, tente rodar no localhost e depois no server...

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai xanburzum beleza

eu rodo no localhost/pasta/index.asp

ai eu entro na pagina ds_name.asp

ai eu clico no link envia

 

ai na pagina envia.asp eu preencho os formularios e ai na pagina recebe_email.asp aparece Sua mensagem fora enviada com sucesso!

so isso eu não to conseguindo que esse formulario preenchido ele vai para o meu e-mail

Compartilhar este post


Link para o post
Compartilhar em outros sites

os dados estao sendo recuperados corretamente do form,

alguns user usando o gmail, apresentaram

problema de autenticação, tente mudar o smtpserver

 

depois tente rodar esse code, para ver se esta instalado o CDOSYS

 

<%
Dim arrListaComponentes(48)

arrListaComponentes(0)  = Array( "AB Mailer","ABMailer.Mailman" )
arrListaComponentes(1)  = Array( "ABC Upload","ABCUpload4.XForm" )
arrListaComponentes(2)  = Array( "ActiveFile","ActiveFile.Post" )
arrListaComponentes(3)  = Array( "ActiveX Data Object","ADODB.Connection" )
arrListaComponentes(4)  = Array( "Adiscon SimpleMail","ADISCON.SimpleMail.1" )
arrListaComponentes(5)  = Array( "ASP DNS", "AspDNS.Lookup" )
arrListaComponentes(6)  = Array( "ASP HTTP","AspHTTP.Conn" )
arrListaComponentes(7)  = Array( "ASP Image","AspImage.Image" )
arrListaComponentes(8)  = Array( "ASP Mail","SMTPsvg.Mailer" )
arrListaComponentes(9)  = Array( "ASP NNTP News", "AspNNTP.Conn" )
arrListaComponentes(10) = Array( "ASP POP 3", "POP3svg.Mailer" )
arrListaComponentes(11) = Array( "ASP Simple Upload","ASPSimpleUpload.Upload" )
arrListaComponentes(12) = Array( "ASP Smart Cache","aspSmartCache.SmartCache" )
arrListaComponentes(13) = Array( "ASP Smart Mail","aspSmartMail.SmartMail" )
arrListaComponentes(14) = Array( "ASP Smart Upload","aspSmartUpload.SmartUpload" )
arrListaComponentes(15) = Array( "ASP Tear","SOFTWING.ASPtear" )
arrListaComponentes(16) = Array( "ASP Thumbnailer","ASPThumbnailer.Thumbnail" )
arrListaComponentes(17) = Array( "ASP WhoIs","WhoIs2.WhoIs" )
arrListaComponentes(18) = Array( "ASPSoft NT Object","ASPSoft.NT" )
arrListaComponentes(19) = Array( "ASPSoft Upload","ASPSoft.Upload" )
arrListaComponentes(20) = Array( "CDO NTS","CDONTS.NewMail" )
arrListaComponentes(21) = Array( "Chestysoft Image","csImageFile.Manage" )
arrListaComponentes(22) = Array( "Chestysoft Upload","csASPUpload.Process" )
arrListaComponentes(23) = Array( "Dimac JMail","JMail.Message" )
arrListaComponentes(24) = Array( "Distinct SMTP","DistinctServerSmtp.SmtpCtrl" )
arrListaComponentes(25) = Array( "Dundas Mailer","Dundas.Mailer" )
arrListaComponentes(26) = Array( "Dundas Upload","Dundas.Upload.2" )
arrListaComponentes(27) = Array( "Dundas PieChartServer", "Dundas.ChartServer.2")
arrListaComponentes(28) = Array( "Dundas 2D Chart", "Dundas.ChartServer2D.1")
arrListaComponentes(29) = Array( "Dundas 3D Chart", "Dundas.ChartServer")
arrListaComponentes(30) = Array( "Dynu Encrypt","Dynu.Encrypt" )
arrListaComponentes(31) = Array( "Dynu HTTP","Dynu.HTTP" )
arrListaComponentes(32) = Array( "Dynu Mail","Dynu.Email" )
arrListaComponentes(33) = Array( "Dynu Upload","Dynu.Upload" )
arrListaComponentes(34) = Array( "Dynu WhoIs","Dynu.Whois" )
arrListaComponentes(35) = Array( "Easy Mail","EasyMail.SMTP.5" )
arrListaComponentes(36) = Array( "File System Object","Scripting.FileSystemObject" )
arrListaComponentes(37) = Array( "Ticluse Teknologi HTTP","InteliSource.Online" )
arrListaComponentes(38) = Array( "Last Mod","LastMod.FileObj" )
arrListaComponentes(39) = Array( "Microsoft XML Engine","Microsoft.XMLDOM" )
arrListaComponentes(40) = Array( "Persits ASP JPEG","Persits.Jpeg" )
arrListaComponentes(41) = Array( "Persits ASPEmail","Persits.MailSender" )
arrListaComponentes(42) = Array( "Persits ASPEncrypt","Persits.CryptoManager" )
arrListaComponentes(43) = Array( "Persits File Upload","Persits.Upload.1" )
arrListaComponentes(44) = Array( "SMTP Mailer","SmtpMail.SmtpMail.1" )
arrListaComponentes(45) = Array( "Soft Artisans File Upload","SoftArtisans.FileUp" )
arrListaComponentes(46) = Array( "Image Size", "ImgSize.Check" )
arrListaComponentes(47) = Array( "Microsoft XML HTTP", "Microsoft.XMLHTTP" )
arrListaComponentes(48) = Array( "CDOSYS", "CDO.Message" )

' Rotina que verifica o componente do array é um objeto.
Function VerificaObjeto(pComponente)
Dim objComponente
 On Error Resume Next
 VerificaObjeto = False
 Err.Clear
 Set objComponente = Server.CreateObject(pComponente)
 If Err = 0 Then VerificaObjeto = True
 Set objComponente = Nothing
 Err.Clear
End Function

Public Function VerificaComponentes()
Dim intCont, strTxt
Dim intIndex, strProv

intCont = 0
 strTxt = "<table border='1' bordercolor='black' cellspacing='0' cellpadding='0' align='center' width='400'>"
 For intIndex = LBound(arrListaComponentes) To UBound(arrListaComponentes)
  strProv = intIndex
  strTxt = strTxt & "<tr><td width='200'><font face='tahoma' size='1'>" & arrListaComponentes(intIndex)(0) & "</font></td>"
  If VerificaObjeto(arrListaComponentes(intIndex)(1)) Then
    strTxt = strTxt & "<td align=center><font color='red' face='tahoma' size='1'>Instalado</font></td>"
    intCont = intCont + 1
  Else
    strTxt = strTxt & "<td align='center'><font face='tahoma' size='1'>Não Instalado</font></td>"
  End If
  strTxt = strTxt & "</tr>"
 Next
 strTxt = strTxt & "</table><p align='center'><font face='tahoma' size='2'><b>" & intCont & "</b> componentes instalados de "
 strTxt = strTxt & "<b>" & UBound(arrListaComponentes) + 1 & "</b> no provedor.</font> </p>"
 VerificaComponentes = strTxt 
End Function

Response.Write VerificaComponentes
%>

um exemplo simples funcionando

 

<%
Option Explicit

Dim objMail, grupoForm, htmlForm
Dim assunto, objCDOSYSMail, objCDOSYSCon

assunto=request.form("assunto")
grupoForm=request.form("grupo")
htmlForm=request.form("html")

		
		Set objCDOSYSMail = Server.CreateObject("CDO.Message")
		Set objCDOSYSCon = Server.CreateObject ("CDO.Configuration")
		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.terra.com.br"
		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30
		objCDOSYSCon.Fields.update
		Set objCDOSYSMail.Configuration = objCDOSYSCon
		objCDOSYSMail.From = "email@dominio.com.br"
		objCDOSYSMail.To = var_email
		objCDOSYSMail.Subject = assunto
		objCDOSYSMail.HtmlBody = htmlForm
		objCDOSYSMail.Send
		Set objCDOSYSMail = Nothing
        Set objCDOSYSCon = Nothing
		
		%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai xanburzum beleza

essa pagina de componente eu rodei ela e ela deu o erro do componente objCDOSYSMail.Send ai eu tirei ele e ai ficou a pagina em branco

 

a minha pagina recebe_email.asp acontece o mesmo problema é nesse comando está dando erro objCDOSYSMail.Send

 

da pra arrumar ou é problema no servidor do smtp do gmail

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai gente tudo bem

então o meu envio de e-mail pelo formulario e pela pagina de envio está dando erro no comando objCDOSYSMail.Send

o servidor smtp ele aceita o gmail ou não quando eu preencho o formulario e coloco pra enviar ai aparece na pagina recebe_email.asp Sua mensagem foi enviada com sucesso! mais não vai para o meu e-mail

valeu pela ajuda de todos voces

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você estiver utilizando SMTP do Gmail, você tem que fazer as demais configurações, como informar que usa conexão segura, exige autenticação e informar o usuário e a senha.

Compartilhar este post


Link para o post
Compartilhar em outros sites

reinaldo, existe a possibilidade de você testar o componente cdosys utilizando algum outro servidor smtp, que não seja do GMAIL ?

 

O Gmail utiliza porta de conexão segura (SSL), e a porta de envio é alterada, e é obrigatorio a especificação de usuário e senha.

Agora.. como você define usuario + senha no cdosys eu não saberia lhe informar.. tambem, não saberia lhe dizer, como mudaria a porta de envio smtp dele.. para funcionar com o GMAIL..

 

Por isso, antes de quebrar a cuca, veja se o cdosys está realmente funcionando.. para depois verificar (se existe) uma maneira de fazer a parte de conexão segura pelo cdosys...

Compartilhar este post


Link para o post
Compartilhar em outros sites

e ai gente tudo beleza

eu consegui fazer funcionar o envio de email com o gmail

 

segue o codigo

 

<%
'on error resume next
Para=Request.Form("To")
Assunto=Request.Form("Subject")
Mensagem=Request.form("Body")



sch = "http://schemas.microsoft.com/cdo/configuration/" 

Set cdoConfig = Server.CreateObject("CDO.Configuration") 


cdoConfig.Fields.Item(sch & "sendusing") = 2 
cdoConfig.Fields.Item(sch & "smtpauthenticate") = 1 
cdoConfig.Fields.Item(sch & "smtpusessl") = True
cdoConfig.Fields.Item(sch & "smtpserverport") = 465
cdoConfig.Fields.Item(sch & "smtpserver") = "smtp.gmail.com" 
cdoConfig.Fields.Item(sch & "sendusername") = "meuemail@gmail.com" 
cdoConfig.Fields.Item(sch & "sendpassword") = "minha senha" 
cdoConfig.fields.update 

Set cdoMessage = Server.CreateObject("CDO.Message") 
Set cdoMessage.Configuration = cdoConfig 

cdoMessage.From = "meuemail@gmail.com" 
cdoMessage.To = "Para"
cdoMessage.Subject = Assunto 
cdoMessage.HTMLBody = Mensagem
x = cdoMessage.Send 

if x > 0 then
	Response.Write x
	Response.End
	else
	response.write "Sua mensagem foi enviada com sucesso!"
End if

Set cdoMessage = Nothing 
Set cdoConfig = Nothing 



%>

 

eu fiz uma consulta na pagina consulta.asp ela busca os dados cadastrados na tabela ai na pagina consulta aparece o dados da tabela como que eu faço pra enviar esses dados da tabela por e-mail

valeu pela ajuda de todos voces

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.