Como enviar mensagens de e-mail através da conta SMTP (Envio adicionais) com PHP
Caso tenha um alojamento Linux com PHP, saberá que e o envio de mensagens de email através do comando SendMail não é garantida.
Por vezes o comando Send é inibido ou em algumas situações o numero de envios está limitado.)
Em situações em que há uma necessidade de garantir o envio e receção de emails pode utilizar o plano de “Envios adicionais (SMTP)”
Poderá consultar mais sobre a oferta na seguinte pagina.
https://www.amen.pt/email/smtp-email.html
De seguida fornecemos um exemplo de código em PHP que lhe irá permitir o uso da conta de email “Envios adicionais (SMTP)”
Inicialmente será necessário activar a conta SMTP(Envios Adicionais) através da sua conta Amen.pt.
Poderá associar a conta SMTP (Envios Adicionais) a qualquer um dos seus domínios que tem com a Amen.
A primeira linha do código faz referência à biblioteca Mail.php a qual está instalada de origem nos alojamento partilhados Linux.
<?php
require_once "Mail.php"; // biblioteca Mail.php pré-instalada nos alojamentos Linux
$from = "WebMaster <webmaster@tudominio.ext>"; // Variavel relativa ao endereço de Origem
$to = "Stefano <stefano@esempio.ext>>"; // Variavel relativa ao endereço de Destino
$subject = "Test invio smtp"; // Variavel relativa ao Assunto do email
$body = "Ciao,\n\nTest sending mail."; // Mensagem a enviar
$host = "ssl://authsmtp.securemail.pro"; // Endereço do Servidor e Encriptação SSL
$port = "465"; // SMTP Port
$username = "smtp@tudominio.ext"; //' Nome do Utilizador, Por exemplo se o seu dominio é oseudominio.pt terá de preencher com smtp@oseudominio.pt $password = "Password"; // Utilize a password definida para a conta Smtp através da Area de cliente Amen.pt
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
echo "send mail ...";
$mail = $smtp->send($to, $headers, $body);
echo "mail sent.";
if (PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Messagge sent!</p>");
}
?>