Ir para conteúdo

POWERED BY:

Arquivado

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

StudioC4 // Tiarê

Envio de E-Mail por SMTP PHP Class Completa

Recommended Posts

Tutorial ensinando você enviar um email usando SMTP sem SPAN!

 


1º Primeira Coisa crie um arquivo -> class.send.php e coloque dentro o codigo abaixo.

OBS> No local onde estiver o arquivo class.send.php você deve deixar os dois arquivos do PHPMailer. Link para download -> http://www.studioc4serve.com/arquivos/php_mailer.rar

<?
require_once('class.phpmailer.php');

############################################
#### Class Verifica Validação nos Forms ####
#### Crianda por Tiarê Balbi Bonamini   ####
#### www.studioc4.com.br				####
#### atendimento@studioc4.com.br		####
############################################

// Class para Enviar Email
class SendEmail{
	public $nomeEmail;
	public $paraEmail;
	public $assuntoEmail;
	public $conteudoEmail;
	public $confirmacao;
	public $mensagem;
	public $anexo;
	public $copiaEmail;
	public $copiaOculta;
	public $copiaNome;
	public $nomeCopiaOculta;		
	public $configHost;
	public $configPort;
	public $configUsuario;
	public $configSenha;
	public $remetenteEmail;
	public $remetenteNome;
	public $erroMsg;
	public $confirmacaoErro;

	function enviar(){
		// Inicia a classe PHPMailer
		$mail = new PHPMailer();
		
		// Define os dados do servidor e tipo de conexão
		// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
		$mail->IsSMTP(); // Define que a mensagem será SMTP
		$mail->Host = $this->configHost; // Endereço do servidor SMTP
		$mail->SMTPAuth = true; // Usa autenticação SMTP? (opcional)
		$mail->Port = $this->configPort;
		$mail->Username = $this->configUsuario; // Usuário do servidor SMTP
		$mail->Password = $this->configSenha; // Senha do servidor SMTP
		
		// Define o remetente
		// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
		$mail->From = $this->remetenteEmail; // Seu e-mail
		$mail->FromName = $this->remetenteNome; // Seu nome
		
		// Define os destinatário(s)
		// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
		if(isset($this->paraEmail)){	
		$mail->AddAddress(''. $this->paraEmail. '',''.$this->nomeEmail.'');
		}
		if(isset($this->copiaEmail)){
		$mail->AddCC(''.$this->copiaEmail.'', ''.$this->copiaNome.''); // Copia
		}
		if(isset($this->copiaOculta)){
		$mail->AddBCC(''.$this->copiaOculta.'', ''.$this->nomeCopiaOculta.''); // Cópia Oculta
		}
		// Define os dados técnicos da Mensagem
		// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
		$mail->IsHTML(true); // Define que o e-mail será enviado como HTML
		$mail->CharSet = 'utf-8'; // Charset da mensagem (opcional)
		
		// Define a mensagem (Texto e Assunto)
		// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
		$mail->Subject  = "".$this->assuntoEmail.""; // Assunto da mensagem
		$mail->Body = "".$this->conteudoEmail."";// Conteudo da mensagem a ser enviada
		$mail->AltBody = "Por favor verifique seu leitor de email.";
		
		// Define os anexos (opcional)
		// =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
		if(!empty($this->anexo)){
		$mail->AddAttachment("".$this->anexo."");  // Insere um anexo
		}
		// Envia o e-mail
		$enviado = $mail->Send();
		
		// Limpa os destinatários e os anexos
		$mail->ClearAllRecipients();
		$mail->ClearAttachments();
		
		// Exibe uma mensagem de resultado
		if($this->confirmacao == 1){
			if ($enviado) {
			echo $this->mensagem;
			} else {
				echo $this->erroMsg;
				if($this->confirmacaoErro == 1){
					echo "<b>Informações do erro:</b> <br />" . $mail->ErrorInfo;
				}
			}
		}

	}
}
?>

2º Como Usar essa class:

<?
		include("class.send.php");
		// Envia o E-Mail
		$contato = new SendEmail;
		$contato->nomeEmail = "Flash Masters - Contato"; // Nome do Responsavel que vai receber o E-Mail
		$contato->paraEmail = "contato@flashmasters.net"; // Email que vai receber a mensagem
		$contato->configHost = "xxxxxxxxxxxxxxxxxx"; // Endereço do seu SMTP
		$contato->configPort = 25; // Porta usada pelo seu servidor. Padrão 25
		$contato->configUsuario = "login"; // Login do email que ira utilizar
		$contato->configSenha = "senha"; // Senha do email
		$contato->remetenteEmail = "contato@flashmasters.net"; // E-mail que vai ser exibido no remetente da mensagem
		$contato->remetenteNome = "xxxxxxx";	// Um nome para o remetente
		$contato->assuntoEmail = "Assunto"; // Assunto da mensagem
		$contato->conteudoEmail = '';// Conteudo da mensagem se voce quer enviar a mensagem em HTML so colocar o body ai dentro e montar seu style que ele aceita normal.
		$contato->confirmacao = 1; // Se for 1 exibi a mensagem de confirmação
		$contato->mensagem = "Sua mensagem de confirmação"; // Mensagem de Confirmação		
		$contato->erroMsg = "Uma mensagem de erro aqui";// pode colocar uma mensagem de erro aqui!!
		$contato->confirmacaoErro = 0; // Se voce colocar 1 ele exibi o erro que ocorreu no erro se for 0 não exibi o erro uso geralmente para verificar se ta pegando.
		$contato-> enviar(); // envia a mensagem
?>

3º Olha so essa class tem mais uma 10 função tipo copia oculta, copia do email, anexo entre outras qualquer coisa posta o q q voces querem saber !!

 

vlww

Compartilhar este post


Link para o post
Compartilhar em outros sites

HELP

Não estou conseguindo fazer funcionar....

 

Erro. Mensagem não enviada. Informações do erro:

The following From address failed: contato@nadahavee.net (email do remetente);

 

Alguém pode ajudar plz ???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia

gostaria de saber se alguém sabe efetuar +/- isso

 

tipo o script pega o valor se email enviado ou não

 

seria isto

if($confim == 'Verdadeiro')
{
$sql=mysql_query("update tab set status='andamento'");
}
só deverá alterar no sistema se for confirmado o envio

se não da furo no sistema

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito bom,

gostei mesmo da função...

me ajudou a enterder algumas coisas que não sabiA!

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.