Você está na página 1de 4

c 

    
c   
 
     
    
       

Para enviar correios electrónicos utilizando PHP dispomos de uma função bastante
potente, incluída em todas as versões de PHP, sem a necessidade de instalar mais nada,
em contra do que acontecia com ASP.

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.


 


 






   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.

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

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

c    


 


<?
mail("ze@criarweb.com,maria@criarweb.com","assunto","Este é o corpo da mensagem")
?>


  
     


 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.

   
 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().

c        

Vamos enviar um correio com formato HTML a ze@criarweb.com, com cópia a


manel@criarweb.com e com uma cópia oculta para vinnie@criarweb.com e
joao@criarweb.com. O endereço de resposta será configurado a xuxe@criarweb.com.

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

//para o envio em formato HTML


åheaders = "MIME-Version: 1.0\r\n";
åheaders .= "Content-type: text/html;
charset=iso-8859-1\r\n";

//endereço do remitente
åheaders .= "From: Xuxé<xuxe@criarweb.com>\r\n";

//endereço de resposta, se queremos que seja diferente a do remitente


åheaders .= "Reply-To: mariano@desarrolloweb.com\r\n";

//endereços que receberão uma copia åheaders .= "Cc: manel@desarrolloweb.com\r\n";


//endereços que receberão uma copia oculta
åheaders .= "Bcc: vinnie@criarweb.com,joao@criarweb.com\r\n";
mail(ådestinatario,åassunto,åcorpo,åheaders)
?>

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

  
   

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.

>  Para o envio de correio através de PHP é necessário que este tenha uma correta configu

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

PHP configura-se editando o ficheiro php.ini onde devemos especificar dados como o servido
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 siste
deveremos configura-lo de uma maneira ou de outra.

Em sistemas Windows encontraremos o php.ini no directóriowindows ou dentro deste, no


subdirectório system32 ou similar. Neste sistema deveremos indicar o domínio do servidor de
algo parecido a smtp.meudominio.com. Se é o PC local o que faz de servidor, poderemos p
"localhost" como máquina que enviará o correio. Também podemos especificar o endereço de
donde queremos que pareça que se envia a mensagem no caso de que não se indique outra du
o envio
Y

c         


c  
          
   

Para começar, seria muito útil que aprendêssemos a enviar correios eletrônicos
com PHP, para o qual já temos um artigo em CriarWeb.

c
    

Neste caso vamos utilizar a variável å_POST, que deveria conter o formulário, para
saber se recebemos ou não dados desde um formulário. Essa variável vamos
utiliza-la num enunciado if (!å_POST), que se for positivo (não temos nada em
å_POST), significa que não se recebeu nada desde um formulário. Nesse caso,
mostro o formulário de contato.

Em caso contrário (quando temos algo em å_POST), quer dizer que estamos a
receber dados através de um formulário e nesse caso, recolhemos os dados e
compomos o corpo da mensagem.

Vejamos o código da página para criar o formulário , recebe-lo e compor o corpo da


mensagem que vai ser enviada. No mesmo código poderemos encontrar também a
chamada à função que envia o correio.

HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">


<html>
<head>
<title>Envie-nos os seus comentários</title>
</head>

<body bgcolor="#cccc66" text="#003300" link="#006060" vlink="#006060">


<?
if (!å_POST){
?>
<form action="envia_form_php.php" method=post>
Nome: <input type=text name="nome" size=16>
<br>
Email: <input type=text name=email size=16>
<br>
Comentários: <textarea name=coment cols=32 rows=6></textarea>
<br>
<input type=submit value="Enviar">
</form>
<?
}else{
//Estou a receber o formulário, componho o corpo
åcorpo = "Formulário enviado\n";
åcorpo .= "Nome: " . å_POST["nome"] . "\n";
åcorpo .= "Email: " . å_POST["email"] . "\n";
åcorpo .= "Comentários: " . å_POST["coment"] . "\n";

//envio o correio...
mail("admin@seudominio.com","Formuláriorecebido",åcorpo);

//agradeço pelo envio


"Obrigado por preencher o formulário. Foi enviado corretamente.";
}
?>
</body>
</html> Y