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

Langage Java Discussion :

[Débutant]Tokenizer et formulaire


Sujet :

Langage Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 39
    Points
    39
    Par défaut [Débutant]Tokenizer et formulaire
    Bonjour,

    j'ai un problème avec l'utilisation de Tokenizer, j'ai deux paramètres à inserer dans une commande par le biais d'une fenêtre html.

    La partie pour insèrer les paramètres se présente de cette facon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <tr><td>Annonce : <edit var="texte" width="200" height="50"> Prix:<edit var="prix" width=110></td></tr>
    <tr><td><button value="Ajouter" action="bypass -h npc_%objectId%_CreateAnnounce $texte $prix" width="40" height="15" back="sek.cbui94" fore="sek.cbui92"></td></tr>
    je voudrai que l'utilisateur puisse ajouter un texte et fixer un prix, ces données sont enregistré dans une BD.
    J'ai testé directement la commande sans varibale et ça fonctionne bien.

    Le problème est que si j'utilise les variables et que l'utilisateur met un espace dans son texte, ça passe à la variable prix .

    avec ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
                StringTokenizer st = new StringTokenizer("CreateAnnounce");
                st.nextToken();
                String texte = st.nextToken("!");
                String prix = st.nextToken();
                int price = Integer.parseInt(prix);
    J'arrive à mettre une annonce manuellement ( sans passer par le formulaire)
    avec npc_%objectId%_CreateAnnounce Mon Annonce Souhaité!MonPrix

    Hors si je met les variables et j'utilise le formulaire, là ça ne passe pas, je pense que c'est à cause du l'espace entre les deux variables :/.

    J'aimerai que l'utilisateur puisse mettre une annonce avec toute la ponctuation qu'il veut, et fixer le prix, en passant par le formulaire.

    Je suis un peu perdue là avec Tokenizer, j'ai fais des dizaine de test et je n'ai pas trouvé ce que je veux

    Merci d'avance.

  2. #2
    Membre confirmé Avatar de NeptuS
    Profil pro
    Inscrit en
    Août 2005
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 392
    Points : 508
    Points
    508
    Par défaut
    effectivement, un StringTokenizer s'utilise plutot de cette façon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    StringTkenizer stt = new StringTokenizer("chaine à découper", " ");
    while(stt.hasMoreTokens()){
      System.out.println(stt.nextToken());
    }
    Ce qui donnera le résultat suivant :
    chaine
    à
    découper
    Toute vérité est bonne à entendre, même si toutes les vérités ne sont pas bonnes à dire.
    Rien ne sert de partir à point, il vaut mieux courir .

  3. #3
    Membre éprouvé Avatar de leminipouce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2004
    Messages
    754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Janvier 2004
    Messages : 754
    Points : 1 253
    Points
    1 253
    Par défaut
    Citation Envoyé par Nidel
    Le problème est que si j'utilise les variables et que l'utilisateur met un espace dans son texte, ça passe à la variable prix .
    Ca, c'est plutôt normal.

    En revanche, à ta place, au lieu de partir sur un StringTokenizer, j'aurais essayer de faire en sorte que mes variables soient passées "en bloc". En gros j'aurais essayer de faire un truc du genre \"$texte\" \"$prix\" ou quelque chose comme ça -la même chose avec des quotes peut-être ?
    Si , et la ont échoué mais pas nous, pensez à dire et cliquez sur . Merci !

    Ici, c'est un forum, pas une foire. Il y a de respectables règles... à respecter !

  4. #4
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    euh, juste comme ça,

    comme tes données sont destinées à une base de données, fais (très) attention aux caractères spéciaux liés à la base, voir meme à des pattern style

    # DROP table ...

    (bref, tout les ptits trucs d'injection SQL)

    Enfin bref, fais gaffe à ce qui va etre executé par une commande insert. Ne pas controler les valeurs à mettre dans la base peut etre très pénalisant...
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

Discussions similaires

  1. [débutant]Impression de formulaire
    Par maitreblitosaure dans le forum IHM
    Réponses: 10
    Dernier message: 19/07/2006, 08h56
  2. [débutant]problème de formulaire
    Par maitreblitosaure dans le forum IHM
    Réponses: 4
    Dernier message: 12/06/2006, 14h05
  3. [Débutant]tableau de formulaire
    Par minique dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 13/10/2004, 13h57
  4. [Débutant][Token] découper une chaine
    Par _Eric_ dans le forum Langage
    Réponses: 14
    Dernier message: 06/07/2004, 10h36

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