Partage
  • Partager sur Facebook
  • Partager sur Twitter

Condition apres validation d un formulaire

ne fonctionne pas :(

Sujet résolu
    6 avril 2011 à 17:38:56

    Bonjour à tous,

    Alors pour vous expliquer au mieux mon problème:

    j'ai un formulaire avec un champ nom et un champ prenom, me permettant de faire une recherche soit par le nom, soit par le prenom, ou soit par les deux.

    pour cela arrivé sur ma servlet, j'ai traité ces différentes parties telles quelles:
    //--------------------------
    PrintWriter out = response.getWriter();
    String sql="";
    try{
        Connection connection = DriverManager.getConnection(url,login,password);
    
        if(request.getParameter("nom")==null && request.getParameter("prenom")!=null){
        
             sql="select prenom from user_info where prenom ='"+request.getParameter("prenom")+"'";
        }
        else if(request.getParameter("nom")!=null && request.getParameter("prenom")==null){
              
             sql="select nom from user_info where nom ='"+request.getParameter("nom")+"'";
        }
        else if(request.getParameter("nom")!=null && request.getParameter("prenom")!=null){
          
             sql="select nom,prenom from user_info where nom ='"+request.getParameter("nom")+"' && prenom='"+request.getParameter("prenom")+"'";
        }
        else{
            out.println("saisissez au moins une info");
            sql="";
        }
    


    mais j'ai beau saisir soit l'un soit l'autre ou les deux et même rien, il passe directement dans le dernier "ELSE IF"
    je ne vois pas ou est l'erreur, donc je me retourne vers vous qui j espère sauriez mettre l'oeil dessus
    merci par avance
    • Partager sur Facebook
    • Partager sur Twitter
      6 avril 2011 à 19:37:08

      tes champs sont initialisé à null ou à "" ?

      Je te conseil de faire un System.out.println(); des contenu de tes champs.
      • Partager sur Facebook
      • Partager sur Twitter
        6 avril 2011 à 21:56:46

        j'ai fait un system.out.println() de ma requete et y'a bien les bons contenus de mes champs
        et j'ai essayé les deux: null et " "

        Edit: j'ai meme tenté :

        if(request.getParameter("nom")!=" " && request.getParameter("prenom")!=" "){
              
                  sql = "select nom,prenom from user_info where nom='"+request.getParameter("nom")+"' AND prenom='"+request.getParameter("prenom")+"'";    
              
              }
              else  if((request.getParameter("nom")!=" " && request.getParameter("prenom")==" ") || (request.getParameter("nom")==" " && request.getParameter("prenom")!=" " )){
                  sql = "select nom,prenom from user_info where nom='"+request.getParameter("nom")+"' OR prenom='"+request.getParameter("prenom")+"'";
              }
            
              else{
                  out.println("Saisissez au moin un champ");
                  sql = "";
              }
        

        mais il passe que dans la premiere condition a chaque fois


        Edit 2: bon sa a marché en fait je mettais des " " et sa considéré un espace et j'ai remplacé par "" tout colé et ce fut tout bon,j'ai meme un peut optimisé, au cas ou sa peut aider quelqu' un:
        if(request.getParameter("nom")=="" && request.getParameter("prenom")==""){
                  out.println("Saisissez au moin un champ");
                  sql = "";
              }
              else{
                    
                    if((request.getParameter("nom")!="" && request.getParameter("prenom")=="") || (request.getParameter("nom")=="" && request.getParameter("prenom")!="" )){
                        sql = "select nom,prenom from user_info where nom='"+request.getParameter("nom")+"' OR prenom='"+request.getParameter("prenom")+"'";
                    }
            
                    else{
                  
              
                        sql = "select nom,prenom from user_info where nom='"+request.getParameter("nom")+"' AND prenom='"+request.getParameter("prenom")+"'";    
              
                    }
        
        • Partager sur Facebook
        • Partager sur Twitter

        Condition apres validation d un formulaire

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown