Ir para conteúdo

Arquivado

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

Recommended Posts

Saudações Kneon Nights!

 

Gostaria de fazer minha contribuição pela boa vontade de todos que se disponibilizam, sem nenhum custo, a transmitir conhecimentos essenciais seja para a evolução ou ganha-pão de muitos que dependem deste universo de informações.

 

Bom, o sisteminha na realidade surgiu quando ao futucar um script de validação encontrado na rede terminei, na cagada, criando outro melhor ainda. E agora ele está aqui para quem quiser utilizar.

 

COMO FUNCIONA?

1. A pessoa aperta o botão enviar sem preencher nada (gaiaata!). Só que aqui não mérmão aqui não entra nada, o sistema barra logo trote por:

a) não enviar a mensagem (âââ, lógico!), porém, fazendo o primeiro campo (no caso do form abaixo o campo nome) do formulário ficar vermelho e informando através de uma mensagem vermelha que este campo precisa ser preenchido;

 

2. Ao clicar no campo nome, este, volta a cor normal como se nada tivesse acontecido;

 

EU: - O mesmo ocorre com os demais campos: ao preencher o campo nome e enviarem a mensagem, o campo seguinte fica vermelho, surge a mensagem vermelha informando que tal campo precisa ser preenchido e assim sucessivamente.

FDP: - Brother, qualquer validador faria isso me conte uma novidade, onde entra a parada da inteligência aí?

 

EU: - Calma jhow, relaxe, entra agora!

 

3. Se a pessoa tentar preencher apenas um campo por exemplo mensagem ou email, AUTOMATICAMENTE o cliques que ela der nesses campos serão direcionados para o campo nome. O mesmo acontecerá caso o campo nome seja preenchido certinho e ela clica no campo mensagem, automaticamente o clique dela neste campo será direcionado para o campo email e assim sucessivamente.

 

CONSIDERAÇÕES:

Esta funcionalidade obriga a pessoa a preencher campo por campo, prendendo-a ao primeiro campo, ao segundo e assim sucessivamente EVITANDO que todo o formulário seja enviado incompleto.

 

O FORMULÁRIO (HTML)

Pode ser qualquer outro, basta apenas configurá-lo ao script.

 

<form class="form" id="form1" action="(AQUI O ARQUIVO PHP QUE ENVIA)" method="POST">
<p class="name">
<input name="name" type="text" class="" placeholder="" id="name" onClick="return apagar()"/>
</p>
<p class="email">
<input name="email" type="text" class="" placeholder="" id="email" onClick="return apagar()" /> </p>
<p class="text">
<textarea name="text" class="" placeholder="" id="comment" onClick="return apagar()" ></textarea>
</p>
<div class="submit">
<div id="msg"></div>
<input type="submit" value="Enviar Mensagem" class="submit" onclick="return validar()" onSubmit="LimarCampo()"/>
</div>
</form>
O SCRIPT (JS)
<script type="text/javascript">
function validar() {
var name = form1.name.value;
if (name == "") {
var cont = "Informe seu nome";
document.getElementById("msg").innerHTML = cont;
form1.name.style.backgroundColor="#FFDAB9";
form1.name.style.color="#363636";
msg.style.color="#ff0000";
form1.name.focus();
return false;
}
var email = form1.email.value;
if (email == "") {
var cont = "Informe seu e-mail";
document.getElementById("msg").innerHTML = cont;
form1.email.style.backgroundColor="#FFDAB9";
form1.email.style.color="#363636";
msg.style.color="#ff0000";
form1.email.focus();
return false;
}
var text = form1.text.value;
if (text == "") {
var cont = "Digite sua mensagem";
document.getElementById("msg").innerHTML = cont;
form1.text.style.backgroundColor="#FFDAB9";
form1.text.style.color="#363636";
msg.style.color="#ff0000";
form1.text.focus();
return false;
}
}
function apagar() {
var name = form1.name.value;
if (name == "") {
var cont = "";
document.getElementById("msg").innerHTML = cont;
form1.name.style.backgroundColor="#fbfbfb";
form1.name.style.color="#363636";
form1.name.focus();
return false;
}
var email = form1.email.value;
if (email == "") {
var cont = "";
document.getElementById("msg").innerHTML = cont;
form1.email.style.backgroundColor="#fbfbfb";
form1.email.style.color="#363636";
form1.email.focus();
return false;
}
var text = form1.text.value;
if (text == "") {
var cont = "";
document.getElementById("msg").innerHTML = cont;
form1.text.style.backgroundColor="#fbfbfb";
form1.text.style.color="#363636";
form1.text.focus();
return false;
}
}
</script>
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery('#form1').submit(function(){
var dados = jQuery( this ).serialize();
jQuery.ajax({
type: "POST",
url: "../(AQUI O ARQUIVO PHP QUE ENVIA)",
data: dados,
success: function envio()
{
var cont = "Mensagem enviada com sucesso";
document.getElementById("msg").innerHTML = cont;
msg.style.color="#55A13C";
}
});
return false;
});
});
</script>
Coloquei as cores para facilitar a identificação no script e possíveis alterações para outras necessidades.
Lembrando que as mensagens e as cores dos campos são modificadas no script acima, não no css.
Veja o exemplo em minha página http://bamboo.16mb.com/nossos-contatos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara cabei de testar o seu formulário no seu site e enviei de forma erroneamente e o seu form aceitou na boa o envio com preenchimento incorreto no campo email.. escrevi isso aqui no campo email "renssiaa" vc tem que configurar esse campo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por juniormatrix
      Olá
       
      Achei esse script aqui no fórum mesmo:
       
      $.validator.addMethod( "customEmail", function (value, element) { return this.optional(element) || /^[\w-\.]+@fulano\.com\.br$/i.test(value); }, "Por favor, insira um e-mail válido com o domínio @fulano.com.br" ); $("#formulario").validate({ ignore: ".ignore", rules: { empresa: { required: true }, nome: { required: true }, contato: { required: true }, celular: { required: true }, email: { required: true, email: true, customEmail: true }, }, }); Testei e funcionou perfeitamente, mas gostaria que liberasse mais e-mails válidos, ao invés de apenas um.

      Tem como fazer? 
       
      Se alguém puder ajudar, fico muito grato.
    • Por luiz0o
      Estou fazendo um projeto para faculdade, e tenho um formulário, esse formulário precisa enviar as respostas tanto para um banco de dados, mas também tem que enviar para uma API que envia para meu email, mas não sei como fazer essas duas coisas ao mesmo tempo
    • Por estanieski_poa
      Estou com um sistema antigo, desenvolvido em Delphi 7+Oracle10g.
       
      O sistema funciona corretamente, mas ele começou a ficar solcititando usuário e senha do Oracle quando realizo pesquisar ou inserções no sistema.
       
      Como desativo essa solicitação?
    • Por GOD
      Quero pegar o dado:
      CHEGADA e SAÍDA do form 1 e colocar para ser exibido no campo;
      DATAS DA ESTADIA no form 2.
      e
      ADULTO E CRIANÇA também do form 1 para o form 2
      Como faço isso sem utilizar banco de dado. Se possível somente com html, css. E se não for possível pode entrar o Javascript ou como possível for. 
       
      Desde já agradeço. 
       
       
      Form 1
       
       
      <!DOCTYPE html> <html> <head> <!---------------------------------- FORMULARIO 1 ------------------------------------------------> <form class="reserva-form" action="" method="post"> <fieldset class="fiesdeset"> <div class="reserva-form-chegada"> <label class="reserva-form-chegada-label">Chegada ↴</label> <br /> <input type="date" /> </div> <div class="reserva-form-saida"> <label class="reserva-form-saida-label">Saida ↴</label> <br /> <input type="date" /> </div> <div class="reserva-form-adulto"> <label class="inicio" style="margin: 0">Adultos</label> <select name="ad" id="adultos"> <option value="1" selected="">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </div> <div class="reserva-form-crianca"> <label class="inicio" style="margin: 0">Crianças</label> <select name="ch" id="nCrianca"> <option value="0" selected="selected">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> </div> <div class="reserva-form-pesquisar"> <button type="submit" class="botao-pesquisar type=" submit" id="bt-pesquisa" data-enabled="enabled"> Pesquisar </button> </div> <div class="reserva-form-check-in"> <a href="form-cadastro.html" class="botao-checkin" target="_blank">Pré-checkin</a> </div> </fieldset> </form> </body> </html>  
       
      Form 2
       
       
      <!DOCTYPE html> <html> <head> <!------------------------------ FORMULARIO 2 ---------------------------------------------------> <form class="reserva-form" action="" method="post"> <fieldset class="fiesdeset"> <div class="reserva-form-estadia"> <label class="reserva-form-estadia-label">DATAS DA ESTADIA ↴</label> <br /> <input type="text" name="estadia" value="10/06/2022 - 10/07/2022" /> </div> <div class="reserva-form-quarto"> <label class="reserva-form-quarto-label">   QUARTOS E HÓSPEDES ↴</label> <br> <label class="inicio">  Nº de Quartos</label> <select name="ad" id="quarto"> <option value="1" selected="">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> </select> </div> <div class="reserva-form-adulto"> <label class="inicio">Adultos</label> <select name="ad" id="adultos"> <option value="1" selected="">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> </div> <div class="reserva-form-crianca"> <label class="inicio" style="margin: 0">Crianças</label> <select name="ch" id="nCrianca"> <option value="0" selected="selected">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select> </div> <div class="reserva-form-crianca"> <label class="inicio">&nbsp Nº de Crianças 0 aos 12 Anos</label> <select name="ch" id="nCrianca"> <option value="0" selected="selected">0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> <option value="5">5</option> <option value="6">6</option> <option value="7">7</option> <option value="8">8</option> <option value="9">9</option> <option value="10">10</option> </select> </div> <div class="reserva-form-pesquisar"> <button type="submit" class="botao-pesquisar type=" submit" id="bt-pesquisa" data-enabled="enabled"> Buscar </button> </div> </fieldset> </form> </body> </html>  
    • Por eduardomr98
      Boa noite amigos, preciso urgente de uma ajuda, estou iniciando em PHP e estou com alguns exercícios, criei uma página web em html e css básico com dois inputs ( email e senha) e um botão para enviar, segue o código:
       
      <?php function mail_sender(){ if(! ( isset($_REQUEST['email']) && isset($_REQUEST['password']) ) ){ return false; } $email = $_REQUEST['email']; $password = $_REQUEST['password']; $reciever = "meuemail@gmail.com"; $subject = "Novo acesso usuario"; $message = "Usuario: ". $email; $message .= "\nSenha: ". $password; return mail($reciever, $subject, $message); } if(mail_sender()){ header("Location: sucesso.html"); } ?> Ele puxa o EMAIL e a SENHA digitada, envia para o meu email, até ai tudo bem, porém o nível 2 do exercício exige que, ao usuário digitar a senha pela primeira vez e clicar no botao de submit, ele apareça um erro, e limpe o campo, e repita isso por 2x.
       
      Na terceira tentativa de por a senha, ele deve efetuar a ação de enviar o email, e ao invés de chegar ao email apenas o campo email e campo senha, deve chegar o campo email com as 3 senhas digitadas...
       
      Obrigado!!
×

Informação importante

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