Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1189 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Un petit souci avec la login

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Un petit souci avec la login

n°2161542
harkrisz
Posté le 26-10-2012 à 15:15:06  profilanswer
 

Bonjour,
 
J'ai un petit souci avec mon login. J'ai une formulaire de login, quand je clique sur le bouton "ok" sans préciser le login ou le mot de passe, le message bienvenue s'affiche quand même. Je n'arrive pas gérer ça. Qu'est-ce qu'il faudrait que je fasse? Merci bien pour votre aide!!!
 
Voici ma servlet:
 
 
@WebServlet("/controleur" )
public class controleur extends HttpServlet {
 
 private Cookie getCookie(Cookie cookies[], String name) {
  if (cookies != null) {
   for (Cookie c : cookies) {
    if (c.getName().equals(name)) {
     return c;
    }
   }
  }
 
  return null;
 }
 
 /**
  * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
  *      response)
  */
 protected void doGet(HttpServletRequest request,
   HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub
 
  response.setContentType("text/html;charset=UTF-8" );
  HttpSession session = request.getSession();
   
  String url = "/index.jsp";
 
  beansLogin beansLogin = (beansLogin) session.getAttribute("beansLogin" );
 
  if ("connexion".equalsIgnoreCase(request.getParameter("section" ))) {
   System.out.println("connexion" );
   if (null != request.getParameter(beansLogin.mdp)) {
    beansLogin.mdp = request.getParameter("mdp" );
   }
 
   if (null != request.getParameter(beansLogin.login)) {
    beansLogin.login = request.getParameter("login" );
   }
   if (null != request.getParameter(beansLogin.compagnie)) {
    beansLogin.compagnie = request.getParameter("compagnie" );
   }
   url = "/WEB-INF/pages/bienvenue.jsp";
 
  }
 
  else {
   System.out.println("erreur" );
   String er = "login ou mot de passe invalide";
   request.setAttribute("erreur", er);
  }
   
 
  if ("deconnexion".equals(request.getParameter("action" ))) {
   System.out.println("déconnexion" );
   if (request.getParameter("delogin" ) != null) {
    System.out.println("déconnexion2" );
    Cookie c = getCookie(request.getCookies(), "login" );
    c.setMaxAge(0);
    response.addCookie(c);
 
    url = "/index.jsp";
   }
  }
 
  if ("catalogue".equals(request.getParameter("section" )) == true) {
   if (request.getParameter("cat" ) != null) {
 
    url = "/WEB-INF/pages/catalogue.jsp";
 
   }
  }
 
  getServletContext().getRequestDispatcher(url)
    .forward(request, response);
 }
}
 
 
et ma formulaire login:
 
<%@page import= "beans.beansLogin" %>
 
<%  String er=(String)request.getAttribute("erreur" );
    if(er==null) er="";
    String log=request.getParameter("login" );
    if(log==null) log="";
    String mdp=request.getParameter("mdp" );
    if(mdp==null) mdp="";
%>
 
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
      <form action="ctrl" method="get">
        <input type="hidden" name="section" value="connexion" />
         <legend>Se connecter</legend>
         <table align="center">
           
            <tr>  
               <td><label><strong>Login :</strong></label></td>
               <td><input type="text" name="login" value="<%=log%>"/></td>  
            </tr>  
             
            <tr>
               <td><label><strong>Mot de passe :</strong></label></td>
               <td><input type="password" name="mdp" value="<%=mdp%>"/></td>  
            </tr>
             
            <table align="center">
            <tr>
            <td><input type="submit" name="doIt" value="Ok"/></td>
            </tr>
             
            <tr>  
            <div class="er"></div><td><%=er%></td></div>
            </tr>
             
            </table>
         </table>  
      </form>  
</body>
</html>
 

mood
Publicité
Posté le 26-10-2012 à 15:15:06  profilanswer
 

n°2161552
willy le k​id
Posté le 26-10-2012 à 15:38:58  profilanswer
 

Tu vas sur la page bienvenu si ("connexion".equalsIgnoreCase(request.getParameter("section" )))
sans considération de login non vide ou non null
 
hors tu as un champ hidden dans le formulaire
 <input type="hidden" name="section" value="connexion" />
 
Donc il est normal que tu ailles toujours sur la page de bienvenue
 
 

n°2161557
harkrisz
Posté le 26-10-2012 à 15:52:06  profilanswer
 

Merci pour ton réponse.
J'ai ajouté cette ligne juste après ça: ("connexion".equalsIgnoreCase(request.getParameter("section" )))

 


if (request.getParameter("doIt" ) != null && request.getParameter("login" ).trim().isEmpty() != true && request.getParameter("mdp" ) .trim().isEmpty()!= true) {

 

Maintenant je reste bien sur la page login, mais sans le message d'erreur, en plus la page bienvenue n'affiche plus du tout


Message édité par harkrisz le 26-10-2012 à 15:52:33
n°2161568
harkrisz
Posté le 26-10-2012 à 16:24:19  profilanswer
 

En fait, c'est bon, sauf, que le message d'erreur s'affiche après la déconnexion et pas avant la connexion.  
 
Puis, je ne passe pas dans le déconnexion le  System.out.println("déconnexion" ); ne 'affiche pas dans le console... Qu'est-ce qu'il faudra que je fasse? Merci!

n°2161840
willy le k​id
Posté le 29-10-2012 à 10:30:38  profilanswer
 

Il faut que tu debugges, développer ca a aussi des côtés moins fun.
Tu fais tourner ta servlet en mode debug dans Eclipse avec un serveur Tomcat (ou autre) embarqué.
En mettant des points d'arrêts aux endroits judicieux.
 

harkrisz a écrit :

En fait, c'est bon, sauf, que le message d'erreur s'affiche après la déconnexion et pas avant la connexion.  
Puis, je ne passe pas dans le déconnexion le  System.out.println("déconnexion" ); ne 'affiche pas dans le console... Qu'est-ce qu'il faudra que je fasse? Merci!


n°2161878
harkrisz
Posté le 29-10-2012 à 14:40:42  profilanswer
 

Merci!


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Un petit souci avec la login

 

Sujets relatifs
Findby Login and password Myeclipse MysqlPetit problème - langage C
Souci de Fortran[SOS] Débuggage divers sur un petit site
[C] Aide pour petit exo 2[C] Aide pour petit exo
[Drupal] Bug IE & petit conflit avec développeur web[RESOLU]page de login avec compte à rebours
afficher le login au lieu de mot pseudo[PHP+SQL] Cherche un petit coup de main pour une application simple
Plus de sujets relatifs à : Un petit souci avec la login


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR