Envio autenticado na revenda

De Wiki Locaweb
Ir para: navegação, pesquisa


ATENÇÃO: A utilização desta classe depende da versão 5 ou superior do PHP. O código mencionado abaixo é somente um exemplo. Caso haja dúvidas quanto sua utilização, sugerimos que verifique juntamente a um desenvolvedor de sua confiança.

Nos seguintes planos de revenda:

  • Plesk 11.5 Linux / Windows
  • Plesk 11.0 Linux / Windows
  • Plesk 8.x Linux / Windows
  • Plesk 7.x Linux
  • cPanel


O envio de e-mail através de scripts deverão obrigatoriamente ser desenvolvidos utilizando autenticação no servidor SMTP.
Segue abaixo exemplos de implementação deste recurso nas linguagens PHP, ASP e ASPX:
Crie uma index conforme o exemplo abaixo:

Mais clear.png PHP
<?php
 
require_once('class.phpmailer.php');
 
$mailer = new PHPMailer();
$mailer->IsSMTP();
$mailer->SMTPDebug = 1;
$mailer->Port = 587; //Indica a porta de conexão para a saída de e-mails. Utilize obrigatoriamente a porta 587.
 
$mailer->Host = 'servidor_de_saida'; //Onde em 'servidor_de_saida' deve ser alterado por um dos hosts abaixo:
//Para cPanel: 'localhost';
//Para Plesk 11 / 11.5: 'smtp.dominio.com.br';
 
//Descomente a linha abaixo caso revenda seja 'Plesk 11.5 Linux'
//$mailer->SMTPSecure = 'tls';
 
$mailer->SMTPAuth = true; //Define se haverá ou não autenticação no SMTP
$mailer->Username = 'email@dominio.com'; //Informe o e-mai o completo
$mailer->Password = 'senha'; //Senha da caixa postal
$mailer->FromName = 'Nome Remetente'; //Nome que será exibido para o destinatário
$mailer->From = 'email@dominio.com'; //Obrigatório ser a mesma caixa postal indicada em "username"
$mailer->AddAddress('destinatario@dominio.com'); //Destinatários
$mailer->Subject = 'Teste enviado atraves do PHP Mailer - '.date("H:i").'-'.date("d/m/Y");
$mailer->Body = 'Este é um teste realizado com o PHP Mailer';
if(!$mailer->Send())
{
echo "Mensagem nao enviada";
echo "Erro: " . $mailer->ErrorInfo; exit; }
print "E-mail enviado!";
 
?>



  • Caso queira um exemplar de formulário em PHP, com campos para ser preenchido, clique neste link Formulário

  • Mais clear.png ASP
    <% 
    'CRIA A INSTANCIA COM O OBJETO CDOSYS 
    Set objCDOSYSMail = Server.CreateObject("CDO.Message") 
     
    'CRIA A INSTANCIA DO OBJETO PARA CONFIGURAÇÃO DO SMTP 
    Set objCDOSYSCon = Server.CreateObject ("CDO.Configuration") 
     
    'SERVIDOR DE SMTP 
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.seudominio" 
     
    'PORTA PARA COMUNICAÇÃO COM O SERVIÇO DE SMTP 
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 587
     
    'Utilização de SSl 
    'objCDOSYSCon.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
     
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
     
    'ATIVAR RECURSO DE SMTP AUTENTICADO 
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1 
     
    'USU?RIO PARA SMTP AUTENTICADO 
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername") = "usuario@dominio.com" 
     
    'SENHA DO USUÁRIO PARA SMTP AUTENTICADO 
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "senha" 
     
    'TEMPO DE TIMEOUT (EM SEGUNDOS) 
    objCDOSYSCon.Fields("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60 
     
    'ATUALIZA A CONFIGURAÇÃO DO CDOSYS PARA ENVIO DO E-MAIL 
    objCDOSYSCon.Fields.update 
    Set objCDOSYSMail.Configuration = objCDOSYSCon 
     
    'NOME DO REMETENTE, E-MAIL DO REMETENTE 
    objCDOSYSMail.From = "Remetente <usuário@dominio.com>" 
     
    'NOME DO DESINATARIO, E-MAIL DO DESINATÁRIO 
    objCDOSYSMail.To = "NOME <destino@dominio.com>"
    'objCDOSYSMail.cc = "Copia <copia@dominio.com>" 
    'objCDOSYSMail.bcc = "Copia Oculta <copiaoculta@dominio.com>" 
     
     
    'ASSUNTO DA MENSAGEM 
    objCDOSYSMail.Subject = " Envio autenticado - CDOSYS Apps" 
     
    'CONTEÚDO DA MENSAGEM 
    objCDOSYSMail.TextBody = "Teste do componente CDOSYS - Texto sem HTML" 
    'PARA ENVIO DA MENSAGEM NO FORMATO HTML, ALTERE O TextBody PARA HtmlBody 
     
    'objCDOSYSMail.HtmlBody = "<html> <head><meta http-equiv=""Content-Type"" content=""text/html;charset=utf-8""></head><body></body></html>" 
     
    'ENVIA A MENSAGEM 
    objCDOSYSMail.Send 
     
    'DESTR?I OS OBJETOS 
    Set objCDOSYSMail = Nothing 
    Set objCDOSYSCon = Nothing 
     
    response.write "Email enviado com sucesso" 
     
    'Response.Redirect "Enviado.asp" 
    %>


    Mais clear.png ASPX
    <%@ Page Language="C#" %> 
    <!--Inclui o namespace para envio de emails --> 
    <%@ import Namespace="System" %> 
    <%@ Import Namespace="System.Web.Mail" %> 
    <html> 
    <script runat="server"> 
     
    public void Page_Load(Object Sender, EventArgs e) 
    { 
     
    //Instancia o Objeto Email como MailMessage 
    MailMessage Email = new MailMessage(); 
     
    //Autenticacao
    Email.Fields["http://schemas.microsoft.com/cdo/configuration/smtpserver"] = "smtp.dominio";
    Email.Fields["http://schemas.microsoft.com/cdo/configuration/smtpserverport"] = 587;
    //Email.Fields["http://schemas.microsoft.com/cdo/configuration/smtpusessl"] = 1;
    Email.Fields["http://schemas.microsoft.com/cdo/configuration/sendusing"] = 2;
    Email.Fields["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"] = 1;
    Email.Fields["http://schemas.microsoft.com/cdo/configuration/sendusername"] = "email@dominio";
    Email.Fields["http://schemas.microsoft.com/cdo/configuration/sendpassword"] = "senha";
     
    //Atribui ao método From o valor do Remetente 
    Email.From = "email@dominio"; 
     
    //Atribui ao método To o valor do Destinatário 
    Email.To = "destinatario@dominio"; 
     
    //Atribui ao método Cc o valor do com Cópia 
    //Email.Cc = "email2@dominio"; 
     
    //Atribui ao método Bcc o valor do com Cópia oculta 
    //Email.Bcc = "email3@dominio"; 
     
    //Atribui ao método Subject o assunto da mensagem 
    Email.Subject = "Teste de Envio de mensagens"; 
     
    //Define o formato da mensagem que pode ser Texto ou Html 
    Email.BodyFormat = MailFormat.Html; 
     
    //Atribui ao método Body a texto da mensagem 
    Email.Body = "Texto da mensagem"; 
     
    //Define qual a url que deve ser usada como caminho para as imagens informadas no código html 
    //Email.UrlContentBase = "http://www.xyz.com.br"; 
     
    //Define qual o host a ser usado para envio de mensagens. 
    SmtpMail.SmtpServer = "smtp.dominio"; 
     
    //Envia a mensagem baseado nos dados do objeto Email 
    SmtpMail.Send(Email); 
     
    //Escreve no label que a mensagem foi enviada 
    Response.Write("Email enviado com sucesso!"); 
    } 
    </script> 
    </html>
    Os códigos mencionados acima são somente exemplos.
    Caso haja dúvidas quanto sua utilização, sugerimos que verifique juntamente a um desenvolvedor de sua confiança.