IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Servlets/JSP Java Discussion :

syntaxe d'une requete dans une jsp


Sujet :

Servlets/JSP Java

  1. #1
    Membre du Club
    Inscrit en
    Mars 2009
    Messages
    100
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 100
    Points : 48
    Points
    48
    Par défaut syntaxe d'une requete dans une jsp
    Salut tout le monde
    j'ai une jsp dans laquelle je récupére 2 champs date d'une autre jsp, pour les utiliser dans une requete, voilà le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    String date1=request.getParameter("textfield");
    String date2=request.getParameter("textfield");
     
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd" );
    Date d1 = null;
    Date d2 = null;
    try {
    d1 = sdf.parse(date1);		
    d2 = sdf.parse(date2);
    } 
    catch (ParseException e) 
    {			
    e.printStackTrace();
    }
    //connexion à la base et chargement de driver
    PreparedStatement stm = con.prepareStatement ("SELECT * FROM maTable WHERE (date1='"+d1+"') AND (date2='"+d2+"')");
    le probleme c'est que lorsque la date1 et date2 sont egals à null, il m'affiche l'erreur suivante: syntax error at or near "null"

    j'espere que vous pouvez m'aider à resoudre ce probleme
    merci d'avance

  2. #2
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 804
    Points
    48 804
    Par défaut
    si date1 ou date2 est null, tu va avoir du mal à les transformer en objet Date. Rajouet simplement un test avec un if pour ces cas là.

  3. #3
    Membre éclairé Avatar de Lorantus
    Homme Profil pro
    Consultant développeur indépendant / Java/VB/C(++)/ObjectPal
    Inscrit en
    Août 2007
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant développeur indépendant / Java/VB/C(++)/ObjectPal

    Informations forums :
    Inscription : Août 2007
    Messages : 599
    Points : 882
    Points
    882
    Par défaut
    Pour avoir un code stable, il est impératif de faire un test des valeurs retournées par getParameter(...) :
    - si null, pour eviter une NullException
    - si au bon format (try/catch, il faut en abuser)
    - transformer les "<" en &lg; pour eviter les modification d'affichage HTML des texts soumis par les utilisateurs
    - encodeURL(...) pour garder les sessions dans les flux de navigation des utilisateurs.

    Ne jamais supposer que les valeurs transmisses en paramètre de requête sont bonnes !

    On le répétera jamais assez.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2006
    Messages : 67
    Points : 67
    Points
    67
    Par défaut
    Bonjour,
    Je suis d accord avec Lorantus sur le test de tes valeurs
    avec un ( request.getParameter(date1)!=null) et toute les fonctions qui teste la validité des valeurs entée par l'utilisateur( faut supposer que l'utilisateur est bete )
    et dans ton cas ta requete sql
    tu declare une date d1 null et tu fais : si date1 est null c'est que d1 est null donc a mon avis tu entre pas dans ton try
    essaye un System.out.println() dans ton try et regarde dans ton fichier log tomcat est ce qu'il entre dedans ou non !
    ou plutot regarde juste la trace de ton exception vu que tu fais un luminien

Discussions similaires

  1. [MySQL] requete dans une table avec une varible d'une autre table
    Par kogoi dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 03/11/2011, 15h24
  2. Réponses: 2
    Dernier message: 24/10/2011, 17h15
  3. [MySQL] une requete dans une requete
    Par ots2 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 31/08/2011, 09h49
  4. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48
  5. Utilisation d'une requete dans une requete update
    Par hellbilly dans le forum Access
    Réponses: 4
    Dernier message: 09/01/2005, 15h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo