ti-enxame.com

Altere o nome do remetente php mail em vez de [email protected]

Estou tentando enviar email do meu php:

$to = '[email protected]';
    $email_from = "[email protected]";

    $full_name = 'Suraj Hazarika';
    $from_mail = $full_name.'<'.$email_from.'>';



    $subject = "testing sender name";
    $message = "";
    $message .= '
            <p><strong>This is only a test . Please do not reply.</strong><br />
    ';
    $from = $from_mail;

    $headers = "" .
               "Reply-To:" . $from . "\r\n" .
               "X-Mailer: PHP/" . phpversion();
    $headers .= 'MIME-Version: 1.0' . "\r\n";
    $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";        
    mail($to,$subject,$message,$headers);

Estou seguindo o tutorial Nome do remetente do formulário de e-mail do PHP em vez do e-mail? mas ainda estou recebendo os e-mails com o nome do remetente com o nome do host.

     From                              Date             Subject 
[email protected]  Fri, 11:24 pm       testing sender name
[email protected]  Fri, 11:24 pm       testing sender name
20
Suraj Hazarika

Você usa apenas $from No seu cabeçalho Reply-To. Se você deseja que ele esteja no cabeçalho From, é necessário configurá-lo no cabeçalho From.

Coloque algo assim antes do seu comando mail():

$headers .= 'From: ' . $from . "\r\n";
21
Trott

Cheguei a essa pergunta procurando algo diferente, mas com palavras semelhantes, então veja como fazer o que estava procurando:

No cabeçalho from, coloque o endereço entre colchetes angulares e o "nome do remetente" fora dele.

from: Don Draper <[email protected]>\n

Eu queria que a caixa de entrada dissesse Don Draper ao invés de don.draper e é assim que se faz.

18
Ben

Você também pode tentar adicionar o endereço From ao 'envelope' do correio, utilizando o quinto parâmetro na função mail() do PHP:

mail($to_mail, $subject, $message, $headers, "-f$from_email");

Referência aqui .

Referência sobre cabeçalhos e envelopes de correio aqui

Observe que algumas configurações do servidor podem não permitir isso ou gerar um aviso, dependendo da configuração e/ou da configuração do agente de transferência de email. Esta resposta fala sobre a atualização dos 'usuários confiáveis' do sendmail com relação a isso.

5
indextwo

Adicione esta linha antes da linha do cabeçalho

$headers .= "From: Your Name <[email protected]> \r\n";

Então o código será

$headers = "";
$headers .= "From: WIFI Metropolis <[email protected]> \r\n";
$headers .= "Reply-To:" . $from . "\r\n" ."X-Mailer: PHP/" . phpversion();
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";        
mail($to,$subject,$message,$headers);
3
Ahmed Al Bermawy

Basta adicionar o cabeçalho De. Algo assim.

$headers .= "From: [email protected]";
1
Ben

Tente adicionar From: para o cabeçalho

$headers = "" .
           "Reply-To:" . $from . "\r\n" .
           "From:" . $from . "\r\n" .
           "X-Mailer: PHP/" . phpversion();
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";  

Alguns MTA podem alterar/ignorar essa definição para evitar o SPAM e substituir o usuário do SMTP configurado no PHP.ini

0
Paulo H.