Ir para conteúdo
Fórum Script Brasil
  • 0

Ao Executar Aspmail


zando

Pergunta

Olá galera,

tenho um formulário no qual uso o aspmail para mandar o cadastro por e-mail. O que ocorre é o seguinte: quando abro a página em meu servidor, ele já executa e o mostra a mensagem de erro...

Ele teria que fazer isto depois que eu clicasse em "enviar"...

A ação do formulário é "obrigado.asp"

O que pode estar errado? Alguém pode me ajudar?

Segue o código abaixo...

<%

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

Mailer.FromName = request.form("nome")

Mailer.FromAddress= request.form("email")

Mailer.RemoteHost = "smtp.servidor.com.br"

Mailer.AddRecipient "login", "login@servidor.com.br"

Mailer.ContentType = "text/html" ' formatação html

Mailer.Subject = "Cadastro"

Mailer.BodyText = "<b>Nome: </b>" & request.form("nome") & "<br>" & _

"<b>Email: </b>" & request.form("email") & "<br>" & _

"<b>Endereço: </b>" & request.form("endereco") & "<br>" & _

"<b>Bairro: </b>" & request.form("bairro") & "<br>" & _

"<b>Cidade: </b>" & request.form("cidade") & "<br>" & _

"<b>Telefone: </b>" & request.form("tel") & "<br>" & _

"<b>Celular: </b>" & request.form("cel") & "<br>" & _

"<b>Aniversário: </b>" & request.form("dia") & " de " & request.form("mes") & "<br>" & _

"<b>Nome da instituição: </b>" & request.form("instituicao") & "<br>" & _

"<b>Telefone da instituição: </b>" & request.form("tel_inst") & "<br>" & _

"<b>Disciplinas: </b>" & request.form("disciplinas") & "<br>" & _

"<b>Livros: </b>" & request.form("livros") & "<br>"

x = Mailer.SendMail

if x = true then

Response.redirect ("obrigado.asp?")

Else

Response.Write("<script>alert('Erro!!!')</script>")

end if

%>

<%Set Mailer = Nothing%>

Link para o comentário
Compartilhar em outros sites

14 respostass a esta questão

Posts Recomendados

  • 0
Olá galera,

tenho um formulário no qual uso o aspmail para mandar o cadastro por e-mail. O que ocorre é o seguinte: quando abro a página em meu servidor, ele já executa e o mostra a mensagem de erro...

Ele teria que fazer isto depois que eu clicasse em "enviar"...

A ação do formulário é "obrigado.asp"

O que pode estar errado? Alguém pode me ajudar?

Segue o código abaixo...

<%

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")

Mailer.FromName = request.form("nome")

Mailer.FromAddress= request.form("email")

Mailer.RemoteHost = "smtp.servidor.com.br"

Mailer.AddRecipient "login", "login@servidor.com.br"

Mailer.ContentType = "text/html" ' formatação html

Mailer.Subject = "Cadastro"

Mailer.BodyText = "<b>Nome: </b>" & request.form("nome") & "<br>" & _

"<b>Email: </b>" & request.form("email") & "<br>" & _

"<b>Endereço: </b>" & request.form("endereco") & "<br>" & _

"<b>Bairro: </b>" & request.form("bairro") & "<br>" & _

"<b>Cidade: </b>" & request.form("cidade") & "<br>" & _

"<b>Telefone: </b>" & request.form("tel") & "<br>" & _

"<b>Celular: </b>" & request.form("cel") & "<br>" & _

"<b>Aniversário: </b>" & request.form("dia") & " de " & request.form("mes") & "<br>" & _

"<b>Nome da instituição: </b>" & request.form("instituicao") & "<br>" & _

"<b>Telefone da instituição: </b>" & request.form("tel_inst") & "<br>" & _

"<b>Disciplinas: </b>" & request.form("disciplinas") & "<br>" & _

"<b>Livros: </b>" & request.form("livros") & "<br>"

x = Mailer.SendMail

if x = true then

Response.redirect ("obrigado.asp?")

Else

Response.Write("<script>alert('Erro!!!')</script>")

end if

%>

<%Set Mailer = Nothing%>

Qual a mensagem de erro ?

Link para o comentário
Compartilhar em outros sites

  • 0

hmm

ele já executa e dá a mensagem de erro?

Ué..

Sobre o erro tudo bem.. Mas porque você disse que ele já executa?

Não era pra executar? Ele deveria executar depois de clicar no botao..?

E como disse o urso.. cade a mensagem de erro ..?

Link para o comentário
Compartilhar em outros sites

  • 0

O problema está na condição que faço para que ele envie o e-mail ou não.. Mas na hora que abro a página, ela não aparece o formulário, mas sim a mensagem de erro e depois que clicar em Ok no "alert" que aparece vai para a página do formulário.

O que pode estar errado? Tem como fazer a condição de outro jeito?

Link para o comentário
Compartilhar em outros sites

  • 0

O interessante é que se eu tirar a condição ele dar certo...

Mas eu preciso de colocar essa condição... a condição é esta abaixo...

x = Mailer.SendMail

if x = true then

Response.redirect ("obrigado.asp?")

Else

Response.Write("<script>alert('Erro!!!')</script>")

end if

%>

Alguém pode me responder por favor...

Desde já agradeço a resposta.

Link para o comentário
Compartilhar em outros sites

  • 0

if Mailer.SendMail then

Response.redirect ("obrigado.asp?")

Else

Response.Write("<script>alert('Erro!!!')</script>")

end if

teste aí!

Link para o comentário
Compartilhar em outros sites

  • 0

Eu fiz assim e deu certo...

x = Mailer.SendMail

if x = true then

MSG = " Obrigado, seu cadastro foi enviado com sucesso!"

Response.redirect ("obrigado.asp?msg="&MSG&"")

end if

Mas eu quero colocar a condição que se não der certo, aparece a mensagem de erro... o problema está nessa condição, porque quando testo sem ela dá certo, mas quando a coloco, processa direto...

Desde já agradeço a resposta...

Link para o comentário
Compartilhar em outros sites

  • 0

mas Mailer.SendMail retorna algum valor?

você tem certeza?

Tenta dá um response.write nele, pra ver..

Se ele não tiver valor nenhum, ele sempre vai entrar no ELSE...

Link para o comentário
Compartilhar em outros sites

  • 0

Olá, busquei informação com outro programador aqui na empresa e achei o que estava errado... No início do meu código do ASPMAIL eu tinha que colocar um "if" para que ele antes de executar buscasse um campo do formulário... Tipo, coloquei para requisitar o campo "nome" do meu formulário...

Então ele não executava direto a função e irá executar somente depois de alguém preencher o formulário e clicar em "cadastrar"...

Desde já, agradeço a colaboração de todos...

Este fórum é muito bom... vocês estão de parabéns.. biggrin.gif

Até mais....

Link para o comentário
Compartilhar em outros sites

  • 0

Que bom que resolveu.

Mas veja só..

O codigo deve ser executado somente depois de clicar em Cadastrar, né?

Porque, você não coloca no seu IF, se o botao Cadastrar é diferente de vazio..

Pois, se o codigo só vai se executar depois de clicar no botao, não é interessante testar se o botao foi clicado?

Que acha?

Link para o comentário
Compartilhar em outros sites

  • 0

é isso aí

onde ENVIAR.. dentro do request.form deve ser o nome do botao!

acho que você pegou a ideia da coisa

hehehe

abraços

Link para o comentário
Compartilhar em outros sites

  • 0

É isso aí,

estou fazendo um curso de ASP agora, por isso comecei a entender como funciona...

Agradeço sua resposta...

Ah.. Coloquei o "if" no botão e deu certo...

Valeu mesmo...

Até breve...

Link para o comentário
Compartilhar em outros sites

  • 0

Perfeito cara!

Acho que posso fechar esse tópico, né?

To fechando ele.

Se quiser mais alguma coisa nesse assunto, me manda PM, que eu reabro ele!

Abraços

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...