Neste artigo vamos mostrar como é simples enviar um email em formato HTML usando a linguagem PHP. Apesar de minha preferência ser receber emails em formato texto, muitas vezes é necessário o envio de um email bem formatado, com hiperlinks, fontes destacadas, etc.
A função mail() do PHP nos permite enviar email através de um script de forma simples e objetiva. Vamos supor que deseja-se enviar um email para fabio@vivaolinux.com.br avisando à ele sobre o seu sucesso no desenvolvimento em PHP. Vamos ao código:
<? mail( "fabio@vivaolinux.com.br", "Oi Fábio", "Meu script para envio de email deu certo !" ); ?>
O comando mail() é definido da seguinte forma:
bool mail ( string to, string subject, string message [, string additional_headers [, string additional_parameters]])
Em nosso primeiro exemplo definimos apenas os campos to, subject e message, mas ainda existem os cabeçalhos adicionais que podem ser definidos e são opcionais. Sempre que você estiver consultando a sintaxe de uma função e encontrar parâmetros delimitados por [] (colchetes), significa que os mesmos são opcionais, ou seja, você pode omiti-los.
Sendo assim, para enviar um email em formato HTML, basta informar que o mesmo é do tipo text/html através do cabeçalho do email e digitar tags Html misturadas com o texto da mensagem no campo subject. Vamos ao código:
<?
$to = "fulano@seudominio.com"; $subject = "Olá, mundo!"; $html = " <html> <body> Este é meu <b>primeiro</b> email em formato HTML! </body> </html>"; $headers = "Content-type: text/html; charset=iso-8859-1\r\n";
if (mail($to, $subject, $html, $headers)) { echo "Email enviado com sucesso !"; } else { echo "Ocorreu um erro durante o envio do email."; }
?>
Como a função mail() retorna um valor booleano (verdadeiro ou falso) de acordo com o status de envio de email, podemos tratar uma mensagem de sucesso ou de erro durante o envio de email.
[1] Comentário enviado por crynos em 29/07/2004 - 09:53h
Estou tendo um problema com html mail aqui na empresas. O script envia o email certinho , mas come algumas letras as vezes, letras simples como B , A, C ... alguem sabe se tem curA?
[4] Comentário enviado por barucco em 02/12/2005 - 12:11h
Criei um script em PHP para envio de email. Tipo, o cara recebe uma newsletter por email e o script é feito para essa pessoa reenviar a newsletter para um ou mais amigos.
Bem eu acesso uma tabela onde está o link dessa newsletter, pego o link, uso a função show_source($newsletter) e como faço para reenviar a newsletter já em formato HTML para os amigos da pesssoa?? Só consigo reenviar como código fonte.
Obrigado!!
[7] Comentário enviado por HackSpy em 21/12/2006 - 17:37h
gostaria de saber de você se você sabe algum script PHP em que eu fico sabendo se um e-mail enviado via função mail() foi recebida pelo cliente ou retornou mail failure?