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

Delphi Discussion :

[ISAPI] Comment récupérer des paramêtres multiples d'un formulaire ?


Sujet :

Delphi

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 42
    Par défaut [ISAPI] Comment récupérer des paramêtres multiples d'un formulaire ?
    Bonjour,

    Mon problème est le suivant :

    J'envois à une dll ISAPI un requête émanant d'un formulaire HTML ayant ( entre-autre ) des listes déroulantes à choix multiple. Dans mon " Web Action " correspondant, je ne trouve pas la méthode pour pouvoir récupérer " directement " l'ensemble des valeurs sélectionnées pour une liste déroulante.

    En utilisant la méthode suivante, je n'obtiens que la première valeur sélectionnée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Request.ContentFields.Values['NAME']
    J'en viens à me demander si je ne dois pas récupérer l'ensemble de la requête pour ensuite la traiter "manuellement"...

  2. #2
    Membre émérite
    Avatar de neilbgr
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    651
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 651
    Par défaut
    Quel version de Delphi est-ce ?

  3. #3
    Membre chevronné
    Avatar de Whiler
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    298
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 298
    Par défaut
    Si tu fais un envoi en GET, qu'as-tu dans l'URL ?

  4. #4
    Membre émérite
    Avatar de neilbgr
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    651
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 651
    Par défaut
    Avec un get on a :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    http://localhost:8282/Tests/ISAPITest.dll?choix=ch1&choix=ch2
    Donc, on a plusieurs fois l'entrée portant le nom de la listbox. Il faut lister et tester.
    Par exemple:
    Code delphi : 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
    18
    19
    20
    procedure TWbPrincipal.WbPrincipalwactCtrlTestAction(Sender: TObject;
      Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
    var
      vIndice: Integer;
      vChamps: TStrings;
    begin
      if Request.MethodType = mtPost then
        vChamps := Request.ContentFields
      else
        vChamps := Request.QueryFields;
     
      Response.Content := '<html><body><ul>';
     
      for vIndice := 0 to vChamps.Count-1 do
        // Tester ici si avant la chaine commence par le nom de la ListBox
        Response.Content := Response.Content + '<li>' + vChamps[vIndice] + '</li>';
     
     
      Response.Content := Response.Content + '</ul></body></html>';
    end;

    Avec comme html :
    Code html : 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
    18
    19
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
      <meta http-equiv="content-type" content="text/html; charset=windows-1250">
      <meta name="generator" content="PSPad editor, www.pspad.com">
      <title></title>
      </head>
      <body>
      <form action="http://localhost:8282/Tests/ISAPITest.dll" method="get">
    <select name="choix" multiple>
     <option value="ch1">Choix 1</option>
     <option value="ch2">Choix 2</option>
     <option value="ch3">Choix 3</option>
    </select>
    <input type="submit">
     
    </form>
      </body>
    </html>

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 42
    Par défaut
    Merci pour les réponses. J'avais oublier de préciser que je suis sous D7 et le formulaire utilise la méthode "POST". La réponse de neilbgr est impeccable pour moi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 5
    Dernier message: 13/09/2012, 08h52
  2. Comment récupérer des paramètre de l'url ?
    Par link256 dans le forum GWT et Vaadin
    Réponses: 6
    Dernier message: 20/07/2010, 16h44
  3. Comment récupérer des données de Outlook Express ?
    Par frenchsting dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 29/04/2005, 11h07
  4. Réponses: 7
    Dernier message: 30/12/2004, 12h01
  5. Réponses: 6
    Dernier message: 28/09/2003, 17h49

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