Ir para conteúdo

POWERED BY:

Arquivado

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

Lucas Sena

[Resolvido] Envio de email em Linux

Recommended Posts

Olá!

Estou usando o brTalk e estou tendo dificuldades na hora de enviar o email com a conversa para o cliente.

Aparece a mensagem de email enviado com sucesso, porém o email não chega para o cliente.

Alguma sugestão do que pode ser?

Segue abaixo o código que estou utilizando de acordo com a hospedagem Linux da Locaweb.

 

<?php
require '../util/header.php';
require 'includes.php';

$session = new Session();
$session->checkSession('user');

$vld = new Validation();

$vld->Validate();

if($vld->hasErrors() == false){

extract($_POST, EXTR_SKIP);

$headers .= "From: contato@meusite.com.br\n"; // Como é recomendação da Locaweb o e-mail From deve ser do seu domínio
$headers .= "Return-Path: contato@meusite.com.br\n"; // Esse e-mail recebe os erros, caso ocorra.
$headers .= "Content-type: text/html; charset=iso-8859-1";

if(!mail($to, $subject, $message, $headers,$headers, "-r")){
	$vld->addMessage('E-mail enviado com sucesso');	
}else{
	$vld->addError('Falha ao enviar E-mail, tente novamente');	
}

}

$vld->jsonResult();
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa enviar o cabeçalho reply-to também:

 

http://ajuda.locaweb.com.br/pt-br/Como_enviar_e-mails_com_a_fun%C3%A7%C3%A3o_mail()_do_PHP

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado, consegui resolver. Tinha um ponto depois do sinal de igual no primeiro $headers e o if mail tava com ! ao invés de @. Fiz essas alterações e funcionou.

Segue abaixo o código de como ficou, William Bruno, não adicionei o replay-to por que o email de resposta é o mesmo do envio, no caso o que seria do cliente é o $to que seria enviado uma cópia da conversa.

Abraços!

<?php
require '../util/header.php';
require 'includes.php';

$session = new Session();
$session->checkSession('user');

$vld = new Validation();

$vld->Validate();

if($vld->hasErrors() == false){

extract($_POST, EXTR_SKIP);

$headers = "From: contato@meusite.com.br\n"; 
$headers .= "Return-Path: contato@meusite.com.br\n"; // return-path
$headers .= "Content-type: text/html; charset=iso-8859-1\n";

if(@mail($to, $subject, $message, $headers, "r")){
	$vld->addMessage('E-mail enviado com sucesso');	
}else{
	$vld->addError('Falha ao enviar E-mail, tente novamente');	
}

}

$vld->jsonResult();
?>

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.