Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

programation

[Resolvido] Erro Código?

Recommended Posts

Olá,

 

eu criei um formulário básico para envio de e-mail via código php, onde prefiro no momento que a verificação dos dados seja pelo código php. Existem dois arquivos, um INDEX.PHP - que envia o formulário - e outro ENVIA.PHP - que faz a verificação do formulário e envia o e-mail.

 

partes dos códigos

 

 

INDEX.PHP

<?

$erro = $_GET["erro"];

 

if($erro == 1)

{

?>

<tr>

<td style="height: 20px; color: red; font-weight: 300;" align="center" valign="center">Por favor, preencha todos os campos obrigatórios!</td>

</tr>

<tr>

<td style="height: 15px;"></td>

</tr>

<?

}

elseif($erro == 2)

{

?>

<tr>

<td style="height: 20px; color: red; font-weight: 300;" align="center" valign="center">O e-mail digitado está incorreto!</td>

</tr>

<tr>

<td style="height: 15px;"></td>

</tr>

<?

}

elseif($erro == 3)

{

?>

<tr>

<td style="height: 20px; color: green; font-weight: 300;" align="center" valign="center">E-mail enviado com sucesso!</td>

</tr>

<tr>

<td style="height: 15px;"></td>

</tr>

<?

}

?>

<tr>

<td>

<table width="603" border="1">

<tr>

<td width="307" align="left">Entre com seu nome (obrigatório)<br /><br /><input class="c_email" type="text" name="c_nome" value="" maxlength="20"></td>

<td width="280" align="left">Seu endereço de e-mail (obrigatório)<br /><br /><input class="c_email" type="text" name="c_email" value="" maxlength="30"></td>

</tr>

</table>

</td>

</tr>

<tr>

<td style="height: 15px;"></td>

</tr>

<tr>

<td>

<table width="602" border="1">

<tr>

<td width="306" align="left">Entre com o assunto (obrigatório)<br /><br /><input class="c_email" type="text" name="c_assunto" value="" maxlength="30"></td>

<td width="280" align="left">Como você me encontrou<br /><br /><input class="c_email" type="text" name="c_encontrou" value="" maxlength="30"></td>

</tr>

</table>

</td>

</tr>

</form>

<tr>

<td> </td>

</tr>

<tr>

<td align="center"><div style="position: relative; left: -5px;"><textarea name="c_mensagem" cols="" rows="" class="c_email2"></textarea><br /><a href="javascript: document.fEnviar.submit();"><img src="imgs/btn_enviar.png" width="201" height="32" /></a></div></td>

</tr>

 

e o outro

 

ENVIA.PHP

 

<?

$nome = $_POST["c_nome"];

$email = $_POST["c_email"];

$assunto = $_POST["c_assunto"];

$encontrou = $_POST["c_encontrou"]; //NÃO OBRIGATÓRIO

$mensagem = $_POST["c_mensagem"];

//VALIDANDO FORMULÁRIO

if(empty($nome) || empty($email) || empty($assunto) || strlen($mensagem)==0)

{

header("Location: index.php?erro=1");

}

else

{

//VALIDANDO E-MAIL

$email = str_replace(" ","",$email);

$email = str_replace("/","",$email);

$email = str_replace("@.","@",$email);

$email = str_replace(".@","@",$email);

$email = str_replace(",",".",$email);

$email = str_replace(";",".",$email);

if(substr_count($email, "@") != 1 || substr_count($email, ".") == 0)

{

header("Location: index.php?erro=2");

}

else

{

//CAMPOS OBRIGATÓRIOS OK

//header("Location: index.php?erro=3");

a questão é, sempre que o formulário é enviado, ele faz a verificação, porém, não sai dela, fica sempre no if da 'verificação dos dados do formulário', tenho certeza que deve ser um erro simples, talvez o erro esteja bem na verificação da $mensagem - que é uma <textarea> - mas eu realmente não consigo fazer com que o código saia disso e continue até o envio do e-mail.

 

Alguém pode me ajudar?

 

Agradeço desde já!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aparece algum erro? Qual?

Caso não, coloque a seguinte linha de código no início do script:

error_reporting(E_ALL);

e veja se há algum erro.

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.