Ir para conteúdo

Arquivado

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

Wilherme

Validação de campos

Recommended Posts

Bom dia, estou com um problema e não consigo achar um erro.

Quando preencho os campos ele envia direto se fazer a validação necessária.

Poderiam me ajudar?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<meta name="keywords" content="" />
<meta name="description" content="" />
<link href="http://fonts.googleapis.com/css?family=Source+Sans+Pro:200,300,400,600,700,900" rel="stylesheet" />
<link href="default.css" rel="stylesheet" type="text/css" media="all" />
<link href="fonts.css" rel="stylesheet" type="text/css" media="all" />

<!--[if IE 6]><link href="default_ie6.css" rel="stylesheet" type="text/css" /><![endif]-->

</head>
<body>
<div id="header-wrapper">
	<div id="header" class="container">
		<div id="logo">
			<h1><a href="#">AR Instal</a></h1>
			 </div>
		<div id="menu">
			<ul>
				<li class="current_page_item"><a href="index.html" accesskey="1" title="">Homepage</a></li>
				<li><a href="#clientes" accesskey="2" title="">Principais Clientes</a></li>
				<li><a href="#contato" accesskey="2" title="">Contato</a></li>
				<li><a href="http://teste.gigaddns.com.br:9000/Login.htm" target="_blank">Externo</a></li>
				
			</ul>
		</div>
	</div>
</div>
<div id="header-featured"> </div>
<div id="banner-wrapper">
	<div id="banner" class="container">
		<p>A empresa, possui experiência de mais de 10 anos de atuação dos seus colaboradores nas áreas de dados, Elétrica, Voz e CFTV. Está instalada em sua sede em Curitiba, equipada com os recursos necessários para atendimento imediato dos seus clientes. A nossa filosofia de trabalho está centrada na satisfação de nossos Clientes pelo atendimento aos objetivos contratados e fundamentados no conhecimento e experiência de seus integrantes. Serviços que Prestamos: Dados, Elétrica, Voz e CFTV. </p>
	</div>
</div>
<div id="wrapper">
<a name="clientes"></a>
	<div id="featured-wrapper">
	
		<div id="featured" class="container_port">
			
			<div class="column2"> <img src='images/img1.png'/>
				<div class="title">
					<h2>1</h2>
				</div>
			</div>
			<div class="column3"> <img src='images/img2.png'/>  
				<div class="title">
					<h2>2</h2>
				</div>
			</div>
			<div class="column4"> <img src='images/img3.png'/>
				<div class="title">
					<h2>3</h2>
				</div>
			</div>
		</div>
	</div>
	<div id="extra" class="container">
	  <a name="contato"></a>
	
	  <!-- *** Validar formulario-->
	
	 <script> 
			function validar(formulario){
				if(formulario.nomeRemetente.value == ''){
					alert("O campo NOME é obrigatório.");
					return false;
				}
				if(formulario.email.value == ''){
					alert("O campo EMAIL é obrigatório.");
					return false;
				}
				if(formulario.email.value.indexOf(('@' && '.'),0)== -1){
					alert("EMAIL invalido.");
					return false;
				}
				if(formulario.assunto.value == ''){
					alert("O campo ASSUNTO é obrigatório.");
					return false;
				}
				if(formulario.mensagem.value == ''){
					alert("O campo MENSAGEM é obrigatório.");
					return false;
				}
				if(formulario.mensagem.value.length < 10){
					alert("A MENSAGEM está muito curta.");
					return false;
				}
				return true;
			}
		</script>

		<!--***fim validar formulario***-->
	
	 <!-- Começa formulario de e-mail -->
	 <p><h4> Para se comunicar conosco, basta preencher os dados logo abaixo, ou
       se preferir pode enviar um email para contato@empresa.com.br</h4> </p>
	 <div style='margin:0px; margin-left:200px;'>
	  <form id="formulario" name="contato" method="post" onsubmit="return validar(this);" action=""> 
      <tr>

  <?php
if (isset($_POST['enviar']))
 
 ?>
</tr>
	<table>
			<tr>
			<td><label> Nome:  </label></td>
			<td><input type="text" name="nome" size="51" /><small>*</small><br class="clear" /></td>
			</tr>
			
			<tr>
			<td><label> Telefone:  </label></td>
			<td><input type="text" name="telefone" size="51" /><br class="clear" /></td>
			</tr>
			
			<tr>
			<td><label> Email:  </label></td>
			<td><input type="text" name="email" size="51" /><small>*</small><br class="clear" /></td>
			</tr>
			
			<tr>
			<td><label> Assunto:  </label> </td>
			<td><input type="text" name="ass" size="51" /><small>*</small><br class="clear" /></td>
			</tr>
			</table>
			<tr>
			<td><label>Mensagem:</label><textarea name="mensagem" cols="38" rows="7" > </textarea><small>*</small><br class="clear" /></td>
			<span><small>*</small> Campos são obrigatórios.</span><br class="clear" />
			<td><input type="submit" class="botao" name="enviar" value="Enviar" /></td>
			<td><input type="reset" class="botao" name="limpar" value="Limpar" /><br class="clear" /></td>
			</tr>
			
			</form>
			</div>
	
	
	<!-- Termina formulario de e-mail --> 
			</div>
		</div>
      </div>
      
	 </div>
<div id="copyright" class="container">
	<p>© 2014. All rights reserved. | By <a href="http://aguinea.com.br/">Aguínea Consultoria Web	</a></p>
</div>
</body>
</html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu tenho uma dica, NO HTML 5 Foi adicionado a tag input o parâmetro required="required", ele deixa o campo requerido, se você usar o type pode usar o required para cada tipo de dado, ou seja type="email" com required="required", ele vai entender que o campo é de email e que você precisa digitar um email valido, assim você usa mesmo javascript.

Atualização: para delimitar o numero minimo de caracteries usa o

minlength=XX


leia mais em http://www.w3schools.com/tags/att_input_required.asp

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera alterei esta parte porem não envia.Não consigo descobrir onde estou errando. Poderiam me ajudar?

 <!-- Começa formulario de e-mail -->
	 <p><h4> Para se comunicar conosco, basta preencher os dados logo abaixo, ou
       se preferir pode enviar um email para contato@empresa.com.br</h4> </p>
	 <div style='margin:0px; margin-left:200px;'>
	  <form id="formulario" name="contato" method="post" onsubmit="return validar(this);" action=""> 
      <tr>

  <?php
if (isset($_POST['enviar']))
 
 ?>
</tr>
	<table>
			<tr>
			<td><label> Nome:  </label></td>
			<td><input type="text" required="required" name="text" pattern="[a-z\s]+$" /></td>
			 <!--  <input type="text" name="nome" size="51" /><small>*</small><br class="clear" /> -->
			</tr>
			
			<tr>
			<td><label> Telefone:  </label></td>
			<td><input type="text" required="required" name="numbers" pattern="[0-9]+$" /></td>
			<!-- <input type="text" name="telefone" size="51" /><br class="clear" /> -->
			</tr>
			
			<tr>
			<td><label> Email:  </label></td>
			<td><input type="email" required="required" class="input-text" name="email" pattern="[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$" /></td>
			<!--<input type="text" name="email" size="51" /><small>*</small><br class="clear" /> -->
			</tr>
			
			<tr>
			<td><label> Assunto:  </label> </td>
			<td><input type="text" required="required" name="name" /></td>
			<!--<input type="text" name="ass" size="51" /><small>*</small><br class="clear" /> -->
			</tr>
			</table>
			<tr>
			<td><label>Mensagem:</label><textarea name="mensagem" cols="38" rows="7" > </textarea><small>*</small><br class="clear" /></td>
			<span><small>*</small> Campos são obrigatórios.</span><br class="clear" />
			<td><input type="submit" class="botao" name="enviar" value="Enviar" /></td>
			<td><input type="reset" class="botao" name="limpar" value="Limpar" /><br class="clear" /></td>
			</tr>
			
			</form>
			</div>
	
	
	<!-- Termina formulario de e-mail -->  

Refiz esta Linha e funcionou.

<form id="formulario" name="contato" method="post" onsubmit="return validar(this);" action="formcontato.php"> 

O problema é que se a pessoa colocar seu nome com CAIXA ALTA não funciona.


Resolvido:

 

Na linha:

<input type="text" required="required" name="text" pattern="[A-Z-a-z\s]+$" />

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.