Nos serviços de alojamento web da Esoterica, por uma questão de controlo de envio de Spam, a função mail() encontra-se desactivada. O envio deve ser efectuado com autenticação SMTP.
De seguida pode consultar um exemplo de um formulário de contacto. Crie um ficheiro com o nome contacto.php e substitua omeuemail@sitedeexemplo.com e AMinhaPassword pelos dados de acesso a uma conta de email do seu domínio.
<?php
if ( isset($_POST['submit']) ) {
// Dados de autenticação SMTP
$smtpinfo['host'] = 'localhost';
$smtpinfo['port'] = '25';
$smtpinfo['auth'] = true;
$smtpinfo['username'] = 'omeuemail@sitedeexemplo.com'; /* Altere este campo para o email do seu domínio */
$smtpinfo['password'] = 'AMinhaPassword'; /* Altere este campo para a password do email */
// Dados recebidos do formulário
$nome = $_POST['nome'];
$email = $_POST['email'];
$mensagem = $_POST['mensagem'];
// Inclusão de ficheiro PEAR. Certifique-se que o PEAR está activado no seu alojamento
require_once "Mail.php";
// Corpo da mensagem
$body = "Nome: ".$nome;
$body.= "\n";
$body.= nl2br($mensagem);
$headers = array ('From' => $email,
'To' => $smtpinfo["username"],
'Subject' => 'Pedido de contacto');
$mail_object = Mail::factory('smtp', $smtpinfo);
$mail = $mail_object->send($smtpinfo["username"], $headers, $body);
if ( PEAR::isError($mail) ) {
echo $mail->getMessage();
} else {
echo '<b>O seu comentario foi enviado com sucesso.</b>';
}
}
?>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Formulário de contacto</title>
</head>
<body>
<form method="post" action="contacto.php">
<label for="nome">Nome:</label>
<input name="nome" id="nome" type="text">
<label for="email">Email:</label>
<input name="email" id="email" type="text">
<label for="mensagem">Mensagem:</label>
<textarea name="mensagem" id="mensagem"></textarea>
<input name="submit" value="Enviar" type="submit">
</form>
</body>
</html>
Caso necessário deve pedir para que seja activado o suporte a PEAR no seu alojamento através de um ticket de suporte.