Formulário PHP
O que há de errado com meu código? As vezes envia, as vezes não...
Podem me ajudar, por favor?!
Tem hora, que se eu limpar o histórico do navegador envia tudo direitinho. Mas tem hora que não envia nada...
<?php
$subjectPrefix = 'Pré-matrícula de';
$emailTo = '<m*******@sophiseducacional.com.br>';
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$name = stripslashes(trim($_POST['form-name']));
$email = stripslashes(trim($_POST['form-email']));
$phone = stripslashes(trim($_POST['form-tel']));
$subject = stripslashes(trim($_POST['form-subject']));
$school = stripslashes(trim($_POST['form-school']));
$graduated = stripslashes(trim($_POST['form-graduated']));
$pattern = '/[\r\n]|Content-Type:|Bcc:|Cc:/i';
if (preg_match($pattern, $name) || preg_match($pattern, $email) || preg_match($pattern, $subject)) {
die("Header injection detected");
}
$emailIsValid = filter_var($email, FILTER_VALIDATE_EMAIL);
if($name && $email && $emailIsValid && $phone){
$subject = "$subjectPrefix $name";
$body = "NOME COMPLETO: $name <br /> E-MAIL: $email <br /> TELEFONE: $phone <br /> ESCOLA EM QUE ESTUDA OU ESTUDOU: $school <br />CURSO PRETENDIDO: $graduated";
$headers = "MIME-Version: 1.1" . PHP_EOL;
$headers .= "Content-type: text/html; charset=iso-8859-1" . PHP_EOL;
$headers .= "Content-Transfer-Encoding: 8bit" . PHP_EOL;
$headers .= "Date: " . date('r', $_SERVER['REQUEST_TIME']) . PHP_EOL;
$headers .= "Message-ID: <" . $_SERVER['REQUEST_TIME'] . md5($_SERVER['REQUEST_TIME']) . '@' . $_SERVER['SERVER_NAME'] . '>' . PHP_EOL;
$headers .= "From: " . "=?iso-8859-1?B?".base64_encode($name)."?=" . "<$email>" . PHP_EOL;
$headers .= "Return-Path: $emailTo" . PHP_EOL;
$headers .= "Reply-To: $email" . PHP_EOL;
$headers .= "X-Mailer: PHP/". phpversion() . PHP_EOL;
$headers .= "X-Originating-IP: " . $_SERVER['SERVER_ADDR'] . PHP_EOL;
mail($emailTo, "=?iso-8859-1?B?".base64_encode($subject)."?=", $body, $headers);
$emailSent = true;
} else {
$hasError = true;
}
}
?>
<?php if(!empty($emailSent)): ?>
<div class="alert-sucess">
<strong>Tudo certo!</strong> Recebemos seus dados :-) <br /> Fique de olho no site para mais informações.
<br />
<br />
<p class="clr2">
<a href="/">Clique aqui</a> para voltar ao formulário ou <a href="/site/" target="_blank">aqui</a> para ir ao site.
</p>
</div>
<?php else: ?>
<?php if(!empty($hasError)): ?>
<div class="alert-fail">
<strong>Oops!</strong> Parece que tem algo errado por aqui. :-( <br />Os campos com asterisco são obrigatórios. <br/>Por favor, tente novamente.
<br />
<br />
</div>
<?php endif; ?>
<form action="<?php echo $_SERVER['REQUEST_URI']; ?>" id="contact-form" class="form-horizontal" role="form" method="post">
<input required type="text" class="name" id="form-name" name="form-name" placeholder="Nome Completo" />*
<br />
<br />
<input required type="email" id="form-email" name="form-email" placeholder="E-mail" />*
<div id="space"></div>
<input required type="tel" maxlength="11" id="form-tel" name="form-tel" placeholder="DDD + Telefone">*
<br />
<br />
<input type="text" class="gdt1" id="form-school" name="form-school" placeholder="Escola em que estuda ou estudou" />
<div id="space"></div>
<input type="text" class="gdt" id="form-graduated" name="form-graduated" placeholder="Curso pretendido" />
<br />
<br />
<table style="padding-bottom: 10px;">
<tr>
<td>
<p class="clr2">
*Campos obrigatórios.
</p>
</td>
<td width="310" style="text-align: right;">
<p class="clr2">
Inscreva-se. Mais informações em breve.
</p>
</td>
</tr>
</table>
<p class="submit">
<input type="submit" value="Enviar" />
</p>
</form>
<?php endif; ?>
Link para visualizar: http://sophiseducacional.com.br/
Discussão (1)
Carregando comentários...