Conheça também: Onmasters . Ofertas . Divulgue! . Vai.la . Geraboleto . Baixa.la . Assista.la . Joga.la
» Início » Programação » PHP » Enviando Email pelo PHP -->
 
Avaliação: Não avaliado | Publicado em: 24/02/2008
Enviando Email pelo PHP
Fred Jader Desenvolvedor web desde os 12 anos, Frederico Jader hoje em dia atua como diretor de arte e administrador de portais em geral, tendo como mais novo projeto o site www.gamesnahora.com


Em concreto, em PHP dispomos de uma função chamada mail() que permite configurar e enviar mensagens de correio. A função chama-se mail() e recebe três parâmetros obrigatórios e dois opcionais. Retorna true se o mail se enviou com êxito e false em caso contrario.

Parâmetros necessários em todos os casos

Destinatário: o endereço de correio ou endereços de correio que vão receber a mensagem. Se incluirmos vários endereços devemos separa-las por uma virgula.

Assunto: para indicar uma cadeia de caracteres que queremos que seja o assunto do correio electrónico a enviar.

Corpo: o corpo da mensagem, o que queremos que tenha escrito o correio.

Exemplo de envío de um mail simples

PHP

mail("ze@site.com,maria@site.com"
,"assunto","Este é o corpo da mensagem")


Parámetros opcionais do envio de correio

Headers: Cabeçalhos do correio. Dados como o endereço de resposta, os possíveis endereços que receberão copia da mensagem, os endereços que receberão cópia oculta, se o correio está em formato HTML, etc.

Additional_parameters: esta opção não costuma utilizar-se e só está disponível a partir da versão 4.0.5 e desde PHP 4.2.3 está desabilitado em modo seguro. Pode usar-se para passar parâmetros adicionais ao programa configurado para enviar o correio, quando se manda o mail usando a opção de configuração sendmail_path. Podemos obter mais informação na documentação de PHP para a função mail().

Exemplo complexo de envio de correio

Vamos enviar um correio com formato HTML a ze@site.com, com cópia a manel@site.com e com uma cópia oculta para vinnie@site.com e joao@site.com. O endereço de resposta será configurado a xuxe@site.com.

PHP

$destinatario = "ze@site.com";
$assunto = "Esta mensagem é um teste";
$corpo = '
<html>
<head>
<title>Teste de correio</title>
</head>
<body>
<h1>Olá amigos!</h1>
<p>
Bem-vindos ao meu correio electrónico de teste.
Estou contente de ter tantos leitores.
</p>
</body>
</html>
';

//para o envio em formato HTML
$headers = "MIME-Version: 1.0rn";
$headers .= "Content-type: text/html;
charset=iso-8859-1rn";

//endereço do remitente
$headers .= "From: Xuxé <xuxe@site.com>rn";

//endereço de resposta
$headers .= "Reply-To: mariano@site.com";

//endereços que receberão uma copia $
headers .= "Cc: manel@site.com";
//endereços que receberão uma copia oculta
$headers .= "Bcc: vinnie@site.com,joao@site.com";
mail($destinatario,$assunto,$corpo,$headers)


Nota: Antes de pôr em funcionamento o script no vosso servidor, por favor, mudem os dados das configurações dos endereços de correio que vão receber a mensagem e coloquem uns endereços que sejam vossos e onde possam verificar se as mensagens se enviaram corretamente.

Conclusão e download

Pensamos e esperamos que depois deste artigo compartam a nossa opinião, que o envio de mails em PHP é uma tarefa simples. É de muito agradecer que todas as versões de PHP incluam uma função para o envio de mails.

Nota: Para o envio de correio através de PHP é necessário que este tenha uma correta configuração.

Se a nossa web está num servidor de um provedor de hosting provavelmente já tenham configurado o PHP para o envio de mails. Se estamos a trabalhar desde um servidor próprio, temos de configurar PHP.

PHP configura-se editando o ficheiro php.ini onde devemos especificar dados como o servidor de correio de saída que deve utilizar PHP para transferir as mensagens.

Dentro do php.ini, devemos procurar o epigrafe [mail function]. Dependendo do nosso sistema deveremos configura-lo de uma maneira ou de outra.

Em sistemas Windows encontraremos o php.ini no directório windows ou dentro deste, no subdirectório system32 ou similar. Neste sistema deveremos indicar o domínio do servidor de smtp, algo parecido a smtp.meudominio.com. Se é o PC local o que faz de servidor, poderemos por "localhost" como máquina que enviará o correio. Também podemos especificar o endereço desde donde queremos que pareça que se envia a mensagem no caso de que não se indique outra durante o envio.