pablim
(usa Ubuntu)
Enviado em 04/06/2012 - 02:21h
Oi galera, mais uma vez vim pedir para que tirem minhas dúvidas a respeito do php.
Queria saber como faço para enviar e-mails pelo PHP usando a função mail()?
Estou tentando enviar o email do meu computador. Eu devo modificar o arquivo de configuração do PHP? Tenho que conseguir algum servidor SMTP?
Quando executo meu código não aparece nenhum erro só a mensagem que meu e-mail não pode ser enviado.
O código que estou tentando enviar os email é este:
<?php
$foiEnviado = isset($_POST["foiEnviado"]) ? ($_POST["foiEnviado"]): "";
$emailDestino = isset($_POST["emailDestino"]) ? ($_POST["emailDestino"]): "";
$emailRemetente = isset($_POST["emailRemetente"]) ? ($_POST["emailRemetente"]): "";
$assunto = isset($_POST["assunto"]) ? ($_POST["assunto"]): "";
$mensagem = isset($_POST["mensagem"]) ? ($_POST["mensagem"]): "";
if ($foiEnviado){
if ($emailDestino){
if (mail($emailDestino, $assunto, $mensagem, "From: $emailRemetente")){
print("Seu e-mail foi enviado com sucesso!");
}else{
print("Seu e-mail não foi enviado devido a um erro no sistema!");
}
}else{
print("Por favor digite o e-mail de destino!");
}
}
?>
<form action="email.php" method="post">
E-mail de destino: <br><input type="text" name="emailDestino" size="50"><br>
Seu e-mail: <br><input type="text" name="emailRemetente" size="50"><br>
Assunto: <br><input type="text" name="assunto" size="80"><br>
Mensagem: <br><textarea name="mensagem" rows="10" cols="50"></textarea><p>
<input type="hidden" name="foiEnviado" value="true">
<input type="submit" name="enviar" value="Enviar!">
</form>
O php.ini está configurado na parte de email assim:
[mail function]
; For Win32 only.
;
http://php.net/smtp
;SMTP = localhost
;
http://php.net/smtp-port
;smtp_port = 25
; For Win32 only.
;
http://php.net/sendmail-from
;sendmail_from = me@example.com
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;
http://php.net/sendmail-path
sendmail_path = "/usr/sbin/sendmail -t -i"
; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_parameters =
; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
mail.add_x_header = On
; Log all mail() calls including the full path of the script, line #, to address and headers
;mail.log =
Obrigadoo..