Jump to content
Fórum Script Brasil
  • 0

Envio de formulario sem Reload da Pagina


palombeta
 Share

Question

Galera Boa Tarde, estou precisando de uma ajuda, é o seguinte estou fazendo um sistema em JSP, Servlet , Bootstrap. 

Para fazer login no sistema o usuário tem que entrar com email e senha em um formulário modal do Bootstrap. (Até ai está funcionando)

O problema é que quando alguém erra na hora de digitar o email ou a senha a mensagem não aparece porque o sistema vai fazer uma pesquisa no banco de dados através do Servlet então o modal Fecha e não consigo retornar nada .. 

Uma pergunta é 

Como já esta indo no Servlet para verificar usuario e senha eu tenho como continuar com o Servlet e de alguma forma fazer o javasccript ir la buscar essa resposta pra mim ? 

 

Metodo Logar no Servlet 

protected void logar(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            
            String email = request.getParameter("email");
            String senha = request.getParameter("senha"); //resgatei email e senha
            
            HttpSession session = null; //sessão nula
            try{
                Usuario u = new Usuario();
                        u.setEmail(email); 
                        u.setSenha(senha); //dentro do objeto
                        session= request.getSession(true); //ativo a sessão
                        
                 UsuarioDao ud = new UsuarioDao();
                 Usuario resp = new UsuarioDao().findByLogin(u); //verifica se a senha 
                  // e o email estão corretos (resp == null ou resp !=null)            
                 
                 if (resp !=null){                     
                         if (resp.getPerfil().equalsIgnoreCase("usu")){                        
                           request.setAttribute("msg","Usuario Logado ...");
                           session.setAttribute("usuario", resp);
                           request.getRequestDispatcher("usuario/index.jsp").
                              forward(request, response);
                         
                         
                         }else if (resp.getPerfil().equalsIgnoreCase("adm")){
                         request.setAttribute("msg","Administrador Logado ...");     
                         session.setAttribute("usuario", resp);
                          request.getRequestDispatcher("administrador/index.jsp").
                               forward(request, response);
                        }
                 }else{                        
                        session.setAttribute("usuario", null);
                         
                        //temporario
                        request.setAttribute("msg", "Usuario Invalido ...");
                        request.getRequestDispatcher("usuario/index.jsp").
                                          forward(request, response);
                 }
            }catch(Exception ex){
                ex.printStackTrace();
                
            }            
           }

Aqui abaixo é o formulário Modal do Bootstrap 

 

<div class="modal-body" style="padding:20px 30px;">
               <form  role="form" action="Controle?cmd=logar" method="post">
                    <div class="form-group">
                      <label for="email"><span class="glyphicon glyphicon-user"></span> Email</label>
                      <input type="text" class="form-control" name="email"  placeholder="Entre com o Email">
                </div>
                <div class="form-group">
                      <label for="senha"><span class="glyphicon glyphicon-eye-open"></span>Senha</label>
                      <input type="password" class="form-control" name="senha" placeholder="Entre com a Senha">
                </div>
                <div class="checkbox">
                      <label><input type="checkbox">Lembrar-me</label>
                </div>  
                ${msg} 
                <button type="submit" class="btn btn-success btn-block"><span class="glyphicon glyphicon-floppy-saved"></span> Login</button>
            </form>
        </div> 

 

Bom Galera espero ter explicado bem enfim ajudem ai 

 

ObrigadooooO!!!

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

Caso queira enviar um formulário em reload da pagina você pode usar a função $.post do JQuery.

 

<script type="text/javascript">
  
  function validar()
  {
    $.post("login.jsp", $("#form1").serialize()).done(function(dados){
    
    	if(dados == "sucesso")
        {
          // comando quando o login for bem sucedido, a pagina de login deve retornar apenas a palavra sucesso!
        }else{
          // comando quando o login não for bem sucedido.
        }
      
    });
  }
 
</script>

<div class="modal-body" style="padding:20px 30px;">
               <form  role="form" id="form1" action="Controle?cmd=logar" method="post" onSubmit="validar(); return false;">
                    <div class="form-group">
                      <label for="email"><span class="glyphicon glyphicon-user"></span> Email</label>
                      <input type="text" class="form-control" name="email"  placeholder="Entre com o Email">
                </div>
                <div class="form-group">
                      <label for="senha"><span class="glyphicon glyphicon-eye-open"></span>Senha</label>
                      <input type="password" class="form-control" name="senha" placeholder="Entre com a Senha">
                </div>
                <div class="checkbox">
                      <label><input type="checkbox">Lembrar-me</label>
                </div>  
                ${msg} 
                <button type="submit" class="btn btn-success btn-block"><span class="glyphicon glyphicon-floppy-saved"></span> Login</button>
            </form>
        </div> 

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share



  • Forum Statistics

    • Total Topics
      149.9k
    • Total Posts
      646.8k
×
×
  • Create New...