Ir para conteúdo

Arquivado

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

Remazela

[Resolvido] PHP - Orientação em Validar Campo E-mail

Recommended Posts

Caros amigos

 

Estou com um problema que não estou conseguindo resolver, para alguns é algo simplesmente fácil, mas estou encontrando dificuldade.

 

preciso validar o campo E-MAIL, que utilizo o seguinte código no meu FORM:

           <form role="form" name="frm_userEdit" id="frm_userEdit" enctype="multipart/form-data" action="" method="POST" onSubmit="return enviardados();" >
              <div class="box-body">

                <div class="form-group">
                  <label for="exampleInputEmail1">Código do Usuário</label>
                  <input type="text" id="userEditaId" name="userEditaId" size="10" class="form-control"
                         value="<?php echo $userEditaId; ?>" style="width:13%" disabled >
                </div>     

                <div class="form-group">
                  <label for="exampleInputEmail1">Nome usuário</label>
                  <input type="text" id="sendUsername" name="sendUsername" size="70" class="form-control"
                         style="width:60%" value="<?php echo $userUsername; ?>" onkeyup="up(this)" > 
                </div> 

                <div class="form-group">
                  <label for="exampleInputEmail1">Senha </label>
                  <input type="password" id="sendSenha" name="sendSenha" size="30" maxlength="8" class="form-control"
                         style="width:32%" placeholder="Se não for Alterar a Senha deixe o CAMPO em branco." >
                  <p class="help-block"><strong>Atenção!</strong> A Senha deve conter apenas 8 caracteres.</p>                         
                </div>         

                <div class="form-group">
                  <label for="exampleInputEmail1">E-mail</label>
                  <input type="text" id="sendEmail" name="sendEmail" size="150" class="form-control" style="width:60%"
                         value="<?php echo $userEmail; ?>" > 
                </div>   

                <div class="form-group">
                  <label for="exampleInputEmail1">Telefone</label>
                  <input type="text" id="sendFone" name="sendFone" size="20" class="form-control" style="width:13%"
                         value="<?php echo $userFone; ?>" > 
                </div>                 

                <div class="form-group">
                 <label for="exampleInputEmail1">Permissão</label>      
                  <select class="form-control" id="sendPermisso" name="sendPermisso" style="width:20%" required>              
                    <option <?php if ($userPermisso=='1') echo 'SELECTED'; ?> value="1" >Administrador</option>
                    <option <?php if ($userPermisso=='2') echo 'SELECTED'; ?> value="2" >Supervisor</option>
                    <option <?php if ($userPermisso=='3') echo 'SELECTED'; ?> value="3" >Compras</option>
                  </select>
                </div> 

              <div class="box-footer">
                <button type="submit" name="executar" id="executar" class="btn btn-primary" value="Atualizar" >Atualizar</button>
                
                <a class="btn btn-danger" name="button" id="button" value="Cancelar" 
                   onclick="frm_userEdit.action='painel.php?exe=admin/clientes/clientes_editList&clienteId=<?php echo $clienteId;?>'; frm_userEdit.submit()" />Cancelar</a>

                <input type="hidden" name="MM_update" value="frm_userEdit">
                <input type="hidden" name="idUser" value="<?php echo $userEditaId; ?>">
                <input type="hidden" name="clienteId" value="<?php echo $clienteId; ?>">
                <input type="hidden" name="sendNivel" value="<?php echo $clienteCategoria; ?>" >                  
              </div>

             </div>
            </form>           

Abaixo fiz essa validação, funciona:

<!--Script para Validar o Formulário -->
<script language="JavaScript" >

    function enviardados(){

        if(document.frm_userEdit.sendUsername.value == "" ) { 
           alert( "Preencha o campo RAZÃO SOCIAL corretamente!" );
           document.frm_userEdit.sendUsername.focus();
           return false;
        }            
     
        if(document.frm_userEdit.sendEmail.value=="" || document.frm_userEdit.sendEmail.value.indexOf('@')==-1 || document.frm_userEdit.sendEmail.value.indexOf('.')==-1 ) {
           alert( "Preencha campo E-MAIL corretamente!" );
           document.frm_userEdit.sendEmail.focus();
           return false;
        }  
      
        if(document.frm_userEdit.sendFone.value=="") { 
           alert( "Preencha campo TELEFONE corretamente!" );
           document.frm_userEdit.sendFone.focus();
           return false;
        }

    return true;

    }


  function up(lstr){              //converte minusculas em maiusculas
    var str=lstr.value;           //obtem o valor
    lstr.value=str.toUpperCase(); //converte as strings e retorna ao campo
  }


  jQuery(function($){
    $("#sendFone").mask("(99)9999-9999");
  });


</script> 

 

Após algumas pesquisa, verifiquei esta opção de validação de e-mail, que não consigo adaptar no meu código:

function validaemail($email){
	//verifica se e-mail esta no formato correto de escrita
	if (!ereg('^([a-zA-Z0-9.-_])*([@])([a-z0-9]).([a-z]{2,3})',$email)){
		$mensagem='E-mail Inv&aacute;lido!';
		return $mensagem;
    }
    else{
		//Valida o dominio
		$dominio=explode('@',$email);
		if(!checkdnsrr($dominio[1],'MX')){
			$mensagem='E-mail Inválido!';
			return $mensagem;
		}
		else{return true;}
	}
}

 

Como consigo adaptar a função de validação no código e como faço para chamar ?

 

Grato,

 

Renato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, acho que não precisa disso tudo não.

 

pra validar no front-end, só fazer o seguinte:

<input type="email" required name="sendEmail">

(isso já pouparia validação no javascript).

 

Ai no PHP, eu faço o seguinte:

if(filter_var($_POST['sendEmail'], FILTER_VALIDATE_EMAIL)){
    $validInfoEmail = true;
}
else{
    $validInfoEmail = false;
    $mensagemValidacao = "O e-mail não é válido.";
}

Mais curto, moderno e útil.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caro Maykel, grato por sua orientação.

 

Fiz desta forma e funcionou:

            <form role="form" name="frm_editaClie" id="frm_editaClie" enctype="multipart/form-data" action="" method="POST" onSubmit="return enviardados();" >
              <div class="box-body">

                <div class="form-group">
                  <label for="exampleInputEmail1">Código do Cliente</label>
                  <input type="text" id="clienteEditaId" name="clienteEditaId" size="10" class="form-control"
                         value="<?php echo $clienteEditaId; ?>" style="width:13%" disabled >
                </div>     

                <div class="form-group">
                  <label for="exampleInputEmail1">Razão Social</label>
                  <input type="text" id="sendRazaoSocial" name="sendRazaoSocial" size="150" class="form-control"
                         style="width:60%" value="<?php echo $clienteRazaoSocial; ?>" onkeyup="up(this)" > 
                </div> 
                
                <div class="form-group">
                  <label for="exampleInputEmail1">E-mail</label>
                  <input type="text" id="sendMail" name="sendMail" size="150" class="form-control" style="width:60%"
                         value="<?php echo $clienteEmail; ?>" > 
                </div>                   
                
              <div class="box-footer">
                <button type="submit" name="executar" id="executar" class="btn btn-primary" value="Atualizar" >Atualizar</button>
                
                <a class="btn btn-danger" name="button" id="button" value="Cancelar" 
                   onclick="frm_editaClie.action='painel.php?exe=admin/clientes/clientes_editList&clienteId=<?php echo $clienteId;?>'; frm_editaClie.submit()" />Cancelar</a>

                <input type="hidden" name="MM_update" value="frm_editaClie">
                <input type="hidden" name="clienteId" value="<?php echo $clienteEditaId; ?>">
              </div>

             </div>
            </form> 


<script language="JavaScript" >

    function enviardados(){

        if(document.frm_editaClie.sendRazaoSocial.value == "" ) { 
           alert( "Por favor, preencha o campo RAZÃO SOCIAL corretamente!" );
           document.frm_editaClie.sendRazaoSocial.focus();
           return false;
        }            
     
        if(document.frm_editaClie.sendNome.value=="") { 
           alert( "Por favor, preencha campo NOME FANTASIA corretamente!" );
           document.frm_editaClie.sendNome.focus();
           return false;
        }
      
        var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{3,3}(?:\.[a-z]{2})?)$/i;
        if(!filter.test(document.getElementById("sendMail").value)){
          alert('Por favor, preencha campo E-MAIL corretamente');
          document.getElementById("sendMail").focus();
          return false
        }

    return true;

    }
  
  </script> 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Fala galera.
      Espero que todos estejam bem.
      Seguinte: Tenho um arquivo xml onde alguns campos estão com : (dois pontos), como o exemplo abaixo:
       
      <item>
      <title>
      d sa dsad sad sadasdas
      </title>
      <link>
      dsadas dsa sad asd as dsada
      </link>
      <pubDate>sadasdasdsa as</pubDate>
      <dc:creator>
      d sad sad sa ad as das
      </dc:creator>
      </item>
       
      Meu código:
       
      $link = "noticias.xml"; 
      $xml = simplexml_load_file($link); 
      foreach($xml -> channel as $ite) {     
           $titulo = $ite -> item->title;
           $urltitulo = $ite -> item->link;
           print $urltitulo = $ite -> item->dc:creator;
      } //fim do foreach
      ?>
       
      Esse campo dc:creator eu não consigo ler. Como faço?
       
      Agradeço quem puder me ajudar.
       
      Abs
       
       
    • Por First
      Olá a todos!
       
      Eu estou criando um sistema do zero mas estou encontnrando algumas dificuldades e não estou sabendo resolver, então vim recorrer ajuda de vocês.
      Aqui está todo o meu código: https://github.com/PauloJagata/aprendizado/
       
      Eu fiz um sistema de rotas mas só mostra o conteúdo da '/' não sei porque, quando eu tento acessar o register nada muda.
      E eu também quero que se não estiver liberado na rota mostra o erro de 404, mas quando eu tento acessar um link inválido, nada acontece.
      Alguém pode me ajudar com isso? E se tiver algumas sugestão para melhoria do código também estou aceitando.
       
       
      Desde já, obrigado.
    • Por landerbadi
      Olá pessoal, boa tarde
       
      Tenho uma tabela chamada "produtos" com os seguintes campos (id, produto) e outra tabela chamada "itens" com os seguintes campos (id, prod_01, prod_02, prod_03, prod_04).
       
      Na tabela produtos eu tenho cadastrado os seguintes produtos: laranja, maçã, uva, goiaba, arroz, feijão, macarrão, etc.
       
      Na tabela itens eu tenho cadastrado os itens da seguinte maneira:
       
      1, laranja, uva, arroz, feijão;
      2, maçã, macarrão, goiaba, uva;
      3, arroz, feijão, maçã, azeite
       
      Meu problema é o seguinte: 
      Eu escolho um produto da tabela "produtos", por exemplo "uva".  Preciso fazer uma consulta na tabela "itens" para ser listado todos os registros que contenham o produto "uva" e que todos os demais produtos estejam cadastrados na tabela "produtos".
       
      No exemplo acima seria listado apenas dois registros, pois o terceiro registro não contém o produto "uva". 
       
      Alguém pode me ajudar? Pois estou quebrando a cabeça a vários dias e não consigo achar uma solução.
    • Por landerbadi
      Boa tarde pessoal. Estou tentado fazer uma consulta no banco de dados porém estou tendo dificuldades. Tenho uma tabela chamada "itens" com os seguintes campos: id, item, plural, ativo. Nela tem cadastrado vários itens e seu respectivo plural. No campo ativo eu coloco a letra "S" para informar que esta palavra está ativa no sistema. Por exemplo: 1, casa, casas, S 2, mesa, mesas, S 3, cama, camas, S 4, moto, motos, S 5, rádio, rádios O quinto registro "radio" não está ativo no sistema pois não tem um "S" no campo ativo. E outra tabela chamada "variações" com os seguintes campos (id, item1, item2, item3) com os seguintes registros: 1, casa, camas, moto 2, mesas, casas, radio 3, rádio, cama, mesa Eu preciso fazer uma busca na tabela variações da seguinte maneira: Eu escolho um registro na tabela "itens", por exemplo "casa". Preciso fazer com que o php me liste todos os registros da tabela "variações" que contenham a palavra "casa". Porém se tiver algum registro com a palavra "casas" também tem que ser listado. Neste caso ele irá encontrar dois registros. Agora eu preciso que o php verifique os demais itens e faça a listagem apenas dos item que estão ativos (que contenham um "S" no campo ativo. Neste caso ele irá encontrar apenas um registro, pois o segundo registro contém a palavra "rádio". E "rádio" não está ativo na tabela itens. Como faço isso?
    • Por First
      Olá a todos!
       
      Quando eu tento fazer o login me mostra esse erro "Could not log you in."; Alguém sabe me ajudar a resolver esse problema no meu código?
      <?php require_once("core/init.php"); if (Input::exists()) { if (Token::check(Input::get("token"))) { $validate = new Validate(); $validation = $validate->check($_POST, array( "username" => array("required" => true), "password" => array("required" => true) )); if ($validation->passed()) { $user = new User(); $remember = (Input::get("remember")) === "on" ? true : false; $login = $user->login(Input::get("username"), Input::get("password"), $remember); if ($login) { Session::flash("home", "Welcome back!"); Redirect::to("index.php"); } else { echo "Could not log you in."; } } else { foreach ($validation->errors() as $error) { echo $error."<BR>"; } } } } ?> <form action="" method="POST"> <div class="field"> <label for="username">Username</label> <input type="text" name="username" id="username"> </div> <div class="field"> <label for="password">Password</label> <input type="password" name="password" id="password"> </div> <div class="field"> <label for="remember"> <input type="checkbox" name="remember" id="remember"> Remember me </label> </div> <input type="hidden" name="token" value="<?php echo Token::generate(); ?>"> <input type="submit" value="Log in"> </form>  
       
      Desde já obrigado.
×

Informação importante

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