Ir para conteúdo

POWERED BY:

Arquivado

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

Dinamiki

[Resolvido] Fazer no campo email ser obrigatóri o @

Recommended Posts

Bom tinham me passado o como era q fazia isso, disseram q era pra colocar isso:

 

function checaEmail($email)
{
	if (eregi("^[-_a-z0-9]+(\.[-_a-z0-9]+)*\@([-a-z0-9]+\.)*([a-z]{2,4})$", $email))
	{
	   return true;
	}
	else
	{
	   return false;
	}	
}


if ( checaEmail($email) == 'false' ) {

header("Location:index.php?mensagem=emailInvalido");
exit();

}

Eu coloquei desse geito na pagina:

 

<?php

function checaEmail($email)
{
	if (eregi("^[-_a-z0-9]+(\.[-_a-z0-9]+)*\@([-a-z0-9]+\.)*([a-z]{2,4})$", $email))
	{
	   return true;
	}
	else
	{
	   return false;
	}	
}

					
					
					$nome = $_POST['nome'];
$email = $_POST['email'];
$assunto = $_POST['assunto'];
$mensagem = $_POST['mensagem'];

if ( checaEmail($email) == 'false' ) {

header("Location:index.php?mensagem=emailInvalido");
exit();

}

if (!$nome || !$email || !$assunto || !$mensagem) {
  echo "<DIV align=center><p align=center><font face=Verdana, Arial size=2 color=#FF9933>Favor preencher os dados corretamente!<br>";
  
  echo "<a href=\"java script:history.back(1)\">Voltar</a>";
}else{
echo "
					<tr> 
					  <TD height=22 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Olá 
						  <font color=#FF0000><b>$nome</b></font>,</font> 
					  </TD>
					</tr>
					<TR> 
					  <TD height=22 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Sua 
						  mensagem foi enviada com sucesso!</font> </TD>
					</TR>
					<tr> 
					  <TD height=22> </TD>
					  <TD></TD>
					  <TD></TD>
					</tr>
					<TR> 
					  <TD height=23 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Obrigado 
						  por nos escutar.</font> </TD>
					</TR>
					<tr> 
					  <TD height=23 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Atenciosamente!</font> 
					  </TD>
					</tr>";
$mens = "<font size=2 face=Verdana><p align=center>:: Pedido de Músicas ::<br><br></p></font>";
$mens .= "<font size=1 face=Verdana><b>Nome:</b> $nome</font><br><br>";
$mens .= "<font size=1 face=Verdana><b>E-mail:</b> $email</font><br>";
$mens .= "<font size=1 face=Verdana><b>Assunto:</b> $assunto</font><br>";
$mens .= "<font size=1 face=Verdana><b>Mensagem:</b> $mensagem</font><br><br>";

$headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: '.$nome.' <'.$email.'>' . "\r\n";


   mail("studioo8_@hotmail.com","Pedido","$mens", $headers);
echo "					<TR> 
					  <TD height=13> </TD>
					  <TD></TD>
					  <TD></TD>
					</TR>
					<TR>
					  <TD height=12></TD>
					  <TD valign=top><div align=center><font size=1 face=Verdana, Arial, Helvetica, sans-serif><a href=index.htm>Voltar</a></font></div></TD>
					  <TD></TD>
					</TR>";
					}
					?>

Mais a mensagem continua sendo enviada sem o @, não aparece nenhum erro apenas envia a mensagem!

Como fazer pra q seja obrigatório o uso do @ no campo de email??

 

Desculpa estar postando de novo mais não responderam no outro topico e declararam ele como (Resolvido).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dinamiki,

 

É assim:

 

<?php
$e_mail = $_POST["e_mail"];

$mensagem_erro="<h3>Os seguintes erros foram encontrados:</h3><br><br>";
$erro = 0;

if (ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $e_mail));
   else{
	$mensagem_erro .= "<font color=\"#FF0000\">* O E-mail digitado contém caracteres inválidos.<br>";
	$erro = 1;
  }

if ($erro == 1){
		print $mensagem_erro;
		print "<font color=\"#000000\"><br>Clique em <a href=\"java script:history.back(-1);\">Voltar</a> para corrigir.";
		exit;
}

?>

 

Um abraço.

 

 

Alissong

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então coloquei dessa forma:

<?php
					
			
					$nome = $_POST['nome'];
$email = $_POST['email'];
$assunto = $_POST['assunto'];
$mensagem = $_POST['mensagem'];
$mensagem_erro="<h3><font color=\"#FFFFFF\">Os seguintes erros foram encontrados:</h3><br><br>";
$erro = 0;

if (ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $e_mail));
   else{
	$mensagem_erro .= "<font color=\"#FF0000\">* O E-mail digitado contém caracteres inválidos.<br>";
	$erro = 1;
  }

if ($erro == 1){
		print $mensagem_erro;
		print "<font color=\"#FFFFFF\"><br>Clique em <a href=\"java script:history.back(-1);\">Voltar</a> para corrigir.";
		exit;
}

		

if (!$nome || !$email || !$assunto || !$mensagem) {
  echo "<DIV align=center><p align=center><font face=Verdana, Arial size=2 color=#FF9933>Favor preencher os dados corretamente!<br>";
  
  echo "<a href=\"java script:history.back(1)\">Voltar</a>";
 }else{
 echo "
					<tr> 
					  <TD height=22 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Olá 
						  <font color=#FF0000><b>$nome</b></font>,</font> 
					  </TD>
					</tr>
					<TR> 
					  <TD height=22 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Sua 
						  mensagem foi enviada com sucesso!</font> </TD>
					</TR>
					<tr> 
					  <TD height=22> </TD>
					  <TD></TD>
					  <TD></TD>
					</tr>
					<TR> 
					  <TD height=23 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Obrigado 
						  por nos escutar.</font> </TD>
					</TR>
					<tr> 
					  <TD height=23 colspan=3> <p align=center><font face=Verdana size=1 color=#FFFFFF>Atenciosamente!</font> 
					  </TD>
					</tr>";
 $mens = "<font size=2 face=Verdana><p align=center>:: Pedido de Músicas ::<br><br></p></font>";
 $mens .= "<font size=1 face=Verdana><b>Nome:</b> $nome</font><br><br>";
 $mens .= "<font size=1 face=Verdana><b>E-mail:</b> $email</font><br>";
 $mens .= "<font size=1 face=Verdana><b>Assunto:</b> $assunto</font><br>";
 $mens .= "<font size=1 face=Verdana><b>Mensagem:</b> $mensagem</font><br><br>";

 $headers  = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
$headers .= 'From: '.$nome.' <'.$email.'>' . "\r\n";

 
   mail("studioo8_@hotmail.com","Pedido","$mens", $headers);
echo "					<TR> 
					  <TD height=13> </TD>
					  <TD></TD>
					  <TD></TD>
					</TR>
					<TR>
					  <TD height=12></TD>
					  <TD valign=top><div align=center><font size=1 face=Verdana, Arial, Helvetica, sans-serif><a href=index.htm>Voltar</a></font></div></TD>
					  <TD></TD>
					</TR>";
					}
					?>

Ai funciona da o erro e tudo mais, quando eu arrumo e coloco para ir da o mesmo erro e não sai desse erro até se o campo do email estiver preenchido corretamente!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá uma olhada nesta parte do código e veja se tem algo errado ali....

$email = $_POST['email'];// olha como é o nome da variável
$assunto = $_POST['assunto'];
$mensagem = $_POST['mensagem'];
$mensagem_erro="<h3><font color=\"#FFFFFF\">Os seguintes erros foram encontrados:</h3><br><br>";
$erro = 0;

if (ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", $e_mail))// olha como você chama ela aqui.

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

matias rezende,

 

Quando comecei a trabalhar com banco de dados, primeiro iniciei com access digitando: Çcãa e ele reconhecia tudo, mas quando comecei no mysql e postgresql tive que ficar esperto em o que digitar. Resumindo, no seu código a palavra email está digitada diferente. Veja

[b]$email [/b]= $_POST['email'];// olha como é o nome da variável
$assunto = $_POST['assunto'];
$mensagem = $_POST['mensagem'];
$mensagem_erro="<h3><font color=\"#FFFFFF\">Os seguintes erros foram encontrados:</h3><br><br>";
$erro = 0;

if (ereg("^([0-9,a-z,A-Z]+)([.,_]([0-9,a-z,A-Z]+))*[@]([0-9,a-z,A-Z]+)([.,_,-]([0-9,a-z,A-Z]+))*[.]([0-9,a-z,A-Z]){2}([0-9,a-z,A-Z])?$", [b]$e_mail[/b]))// olha como você chama ela aqui.

 

Um abraço.

 

 

Alissong

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não use ereg*.

Use preg*.

Deprecated,não binary safe...dentre várias outras razões.

Sua expressão regular também está relativamente estranha.

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.