Ir para conteúdo
Fórum CódigoFonte.net
João Cascaes

Migrar Dundas.Mailer para CDOSYS

Recommended Posts

Buenas!

Sou muito mais muito novo em ASP... na verdade nunca mexi nisso antes, tenho pouco expêriencia em php, mas como administro a rede de uma empresa sou responsável por tudo que diz respeito a TI.

Em nosso site temos uma página de contato (form padrão):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
	background-color: #ededee;
}
-->
</style>
<link href="../estilos.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.style2 {font-weight: normal; text-transform: none; color: #000000; font-style: normal;}
-->
</style></head>

<body leftmargin="0" topmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0">
<form action="enviaemail.asp">
<table width="886" height="507" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>

    <td width="60"><p class="titulosPopup">&nbsp;</p>
      <p class="titulosPopup">&nbsp;</p>    </td>
    <td width="405"><table width="390" height="80" border="0" align="right" cellpadding="0" cellspacing="0">
      <tr>
        <td width="349" height="80"><span class="titulosPopup">Empresa Ltda.<br>
              <br>
              <span class="menufont" style="width: 132px;" #invalid_attr_id="508px">Rua Blablabla, 6000 - Bairro blobloblo<br>

Joinville - SC - Brazil Cep: 66666-005<br>
          Fone/Fax: +55 (48) 4564 6123/ 47 2121 4581</span></span></td>
      </tr>
    </table>
      <p>&nbsp;</p>
      <p>&nbsp;</p>
      <p>&nbsp;</p>      <TABLE width="100%" border=0 align="center" cellPadding=2 cellSpacing=3>
        <TBODY>

          <TR>
            <TD width="21%" align=right noWrap class="menufont">Nome<FONT 
                  size=1 face=Verdana class="style2">&nbsp;</FONT></TD>
            <TD vAlign=bottom width="79%"><FONT face=Verdana size=1>
              <INPUT 
                  size=30 name=nome>
            </FONT></TD>
          </TR>
          <TR>
            <TD width="21%" align=right noWrap class="menufont"><FONT 
                  size=1 face=Verdana class="menufont">E-mail</FONT></TD>

            <TD width="79%"><FONT face=Verdana size=1>
              <INPUT size=30 
                  name=email>
            </FONT></TD>
          </TR>
          <TR>
            <TD width="21%" align=right noWrap class="menufont">Fone<FONT 
                  size=1 face=Verdana class="style2">&nbsp;</FONT></TD>
            <TD width="79%"><FONT face=Verdana size=1>
              <INPUT size=19 
                  name=fone>

            </FONT></TD>
          </TR>
          <TR>
            <TD width="21%" align=right noWrap class="menufont">Empresa<FONT 
                  size=1 face=Verdana class="style2">&nbsp;</FONT></TD>
            <TD width="79%"><FONT face=Verdana size=1>
              <INPUT size=19 
                  name=empresa>
            </FONT></TD>
          </TR>

          <TR>
            <TD width="21%" align=right vAlign=top noWrap class="menufont">Mensagem</TD>
            <TD width="79%"><FONT face=Verdana size=1>
              <TEXTAREA name=mensagem rows=5 cols=30></TEXTAREA>
              <INPUT type=submit value=Enviar name=Submit>
            </FONT></TD>
          </TR>
        </TBODY>

      </TABLE>      <p>&nbsp;</p>
    <p></p></td>
    <td width="451"><div align="right">
      <p></p>
      <p></p>
      <p></p>
      <p></p>
      <p></p>

      <p></p>
      <p align="left"><img src="../imagens/contato.jpg" width="400" height="224"></p>
    </div></td>
  </tr>
</table>
</form>
</body>
</html>
Conforme visto acima esse form envia dados para a pagina "enviaemail.asp" estava tudo bem até que um dia precisamos mudar de servidor, hospedamos o site em determinado servidor (muito famoso por sinal) que tinha pleno suporte a ASP, não nos preocupamos com nada, as páginas e arquivos foram enviadas e aparentemente esta tudo a mil maravilhas... Até que um dia recebo um e-mail do comercial dizendo que não esta funcionando a pagina de contato de nosso site, ou seja o mesmo não esta recebendo mensagens que os clientes enviavam por essa pagina... Segue abaixo script asp enviaemail.asp:
<%
nome = Replace(trim(request("nome")),chr(39),"''")
empresa = Replace(trim(request("empresa")),chr(39),"''")
email = Replace(trim(request("email")),chr(39),"''")
telefone = Replace(trim(request("fone")),chr(39),"''")
mensagem = Replace(trim(request("mensagem")),chr(39),"''")

		if instr(email, "@") = 0 or instr(email, ".") = 0 or Len(email) < 5 or instr(email, " ") <> 0 then
			email = ""
		end if 


if nome <> "" and email <> "" and mensagem <> "" then

	envia = "sim"
		Dim objMail
		Set objMail = Server.CreateObject("Dundas.Mailer")
		objMail.FromAddress = email
		objMail.TOs.Add "[email protected]"
		objMail.TOs.Add "[email protected]"
		objMail.Subject = "Email enviado pelo site www.empresa.com.br"
		objMail.Body = "Nome: " & nome & VbCrLf & "Email: " & email & VbCrLf & "Empresa: " & empresa & VbCrLf & "Telefone: " & telefone & VbCrLf & "assunto: " &assunto & VbCrLf & "Mensagem: " &mensagem 
		objMail.SMTPRelayServers.Add "mail.empresa.com.br"
		objMail.SendMail
		Set objMail = Nothing

		%>
		<script language="javascript">
			alert("Seu email foi enviado com sucesso.");		
		</script>
		<%


else
	envia = "nao"
	if nome <> "" or email <> "" or mensagem <> "" or empresa <> "" or telefone <> "" then
		%>
		<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Email enviado</title>

		<script language="javascript">
			alert("Erro, os campos nome, email e mensagem são obrigatórios.");		
		</script>
</head>

<body>
</body>
</html>

		<%

	end if
end if

response.redirect "conteudo_contato.htm"
%>
Como não manjo nada de ASP e nem sabia por onde começar a analisar esse script, abri um chamado no novo servidor, esse por sua vez me respondeu dizendo que eles não trabalham com Dundas.Mailer e me dizendo para tentar utilizar o bendito do CDOSYS. OK.. fui atras de informação de como utilizar esse tal de CDOSYS, fiz as seguintes alterações no script:
<%
nome = Replace(trim(request("nome")),chr(39),"''")
empresa = Replace(trim(request("empresa")),chr(39),"''")
email = Replace(trim(request("email")),chr(39),"''")
telefone = Replace(trim(request("fone")),chr(39),"''")
mensagem = Replace(trim(request("mensagem")),chr(39),"''")

		if instr(email, "@") = 0 or instr(email, ".") = 0 or Len(email) < 5 or instr(email, " ") <> 0 then
			email = ""
		end if 


if nome <> "" and email <> "" and mensagem <> "" then

	envia = "sim"

		Set objCDOSYSMail = Server.CreateObject("CDO.Message")
		Set objCDOSYSCon = Server.CreateObject ("CDO.Configuration")
		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "mail.empresa.com.br"
 'Porta do SMTP
 		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport")= 25

 'Porta do CDO
 		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2

 'Timeout
 		objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30
		objCDOSYSCon.Fields.update

 'Atualiza a configuração do CDOSYS para envio do e-mail
 		Set objCDOSYSMail.Configuration = objCDOSYSCon

 ' #### CONFIGURAÇÕES DO CABEÇALHO DA MENSAGEM ####
 'Configura o remetente(FROM)
 		objCDOSYSMail.From = email

 'Configura o destinatário(TO)
 	objCDOSYSMail.To = "[email protected]"

 'Configura o Reply-To(Responder Para) 
 	objCDOSYSMail.ReplyTo = "[email protected]"

 'Configura o assunto(SUBJECT)
 	objCDOSYSMail.Subject = "Email enviado pelo site www.empresa.com.br"

 'Configura o conteúdo da mensagem 
 'Para enviar mensagens no formato HTML, altere o TextBody para HtmlBody
 	objCDOSYSMail.TextBody = "Nome: " & nome & VbCrLf & "Email: " & email & VbCrLf & "Empresa: " & empresa & VbCrLf & "Telefone: " & telefone & VbCrLf & "assunto: " &			assunto & VbCrLf & "Mensagem: " &mensagem 

 ' ### ENVIA O E-MAIL ###
 	objCDOSYSMail.Send

 ' ### DESTRÓI OS OBJETOS ###
 	Set objCDOSYSMail = Nothing
 	Set objCDOSYSCon = Nothing

 response.write "Mensagem enviada com sucesso para:  "&sDestinatario&" ..." 


%>
		<script language="javascript">
			alert("Seu email foi enviado com sucesso.");		
		</script>
		<%


else
	envia = "nao"
	if nome <> "" or email <> "" or mensagem <> "" or empresa <> "" or telefone <> "" then
		%>
		<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Email enviado</title>

		<script language="javascript">
			alert("Erro, os campos nome, email e mensagem são obrigatórios.");		
		</script>
</head>

<body>
</body>
</html>

		<%

	end if
end if

response.redirect "conteudo_contato.htm"
%>
A mensagem que retorna ao usuário no site é a seguinte:
error '8004020f'

/pt/enviaemail.asp, line 52 

Ou seja.. não deu certo...

Como isso é importante para minha organização não quis ficar na tentativa e erro muito tempo, vou substituir a pagina por outra com o endereço de e-mail do meu comercial, mas de qualquer forma preciso muito dessa ajuda, se alguém souber o que fasso para fazer essa migração de Dundas.Mailer para CDOSYS eu agraço muito mesmo.. :( :( :( :(

Vlw pela atenção/ajuda de todos...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

×
×
  • Criar Novo...