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

VBScript Discussion :

Récupération des valeurs d'un formulaire


Sujet :

VBScript

  1. #1
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 230
    Par défaut Récupération des valeurs d'un formulaire
    Ma question est simple, peut-on récupérer les valeurs d'un formulaire autrement qu'en découpant l'URL après avoir fait passer les champs avec la méthode get ?

    Ca fait longtemp que je cherche mais je ne trouve rien, les seuls exemples que je trouve son en ASP.

  2. #2
    Membre expérimenté Avatar de gderenne
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    250
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Juillet 2007
    Messages : 250
    Par défaut
    Salut,

    Pour récuperer les données dans l'URL (comme pour un formulaire en methode GET), il y a :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim strNom
    strNom = Request.QueryString("nom")
    Pour récuperer des données envoyées par un formulaire avec la methode POST, il faut utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim strNom
    strNom = Request.Form("nom")
    Cela répond-t-il à ta question ?

  3. #3
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 230
    Par défaut
    C'est exactement ce que je veux, le problème c'est que j'ai essayé et il me met une erreur "objet requis: 'Request'".

    En effet, je fais du VBScript côté client, avec uniquement du VBScript, pas d'ASP, à ce que j'ai vu sur internet, ça viendrait de là le problème.

    Dans ce cas-là, y'a-t-il un autre moyen pour y arriver ?

  4. #4
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Montre nous ton script, on pourra mieux t'aider ainsi.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 230
    Par défaut
    Ce n'est pas un problème de script, je m'explique :

    J'ai des pages HTML pour un intranet qui vont chercher des informations dans des bases de données ACCESS à l'aide du VBScript afin de les affichers. Jusque là, pas de problème avec la connexion, l'exécution des requêtes et l'affichage.

    Ensuite, pour des critères de tri, je fais passer les paramêtres dans l'URL (avec la méthode GET) et pour récupérer les différents paramêtres, je traite l'URL (Parent.Location) avec différentes fonctions (split, replace, etc).
    Comme dans cet exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    ' Extraction des paramètres
    dim tri, machine
    dim url, params
    tri = ""
    machine = ""
    url = split(Parent.Location, "?", -1)
    if UBound(url) = 1 then
       params = split(url(1), "&", -1)
       tri = split(params(0), "=", -1)(1)
       if UBound(params) > 0 then
           machine = Replace(split(params(1), "=", -1)(1), "+", " ")
       end if
    end if
    Cette méthode n'est pas efficace et je voudrais savoir s'il existe des fonctions toutes prêtent pour extraire les paramêtres, comme pour la première réponse (Request.QueryString("nom")) mais en sachant que les scripts ne sont que du côté client (pas d'ASP ni PHP).

  6. #6
    Membre confirmé
    Inscrit en
    Avril 2005
    Messages
    230
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 230
    Par défaut
    Bon, en attendant d'avoir quelque chose de mieux, je me suis fait des petites fonctions pour gérer les paramêtres dans l'URL.

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    option explicit
    dim pParams()
    dim bParamExist
     
    sub extraireParametres()
      ' Extrait les paramêtres de la requêtes dans le tableau pParams
      dim params, url, i, decode, couple
      url = split(Parent.Location, "?", -1)
     
      if (UBound(url) = 0) then
        bParamExist = false
        exit sub
      end if
     
      ' Décodage de l'URL
      decode = replace(url(1), "+", " ")
      decode = replace(decode, "%3", ":")
      decode = replace(decode, ":A", ":")
      decode = replace(decode, "%5", "\")
      decode = replace(decode, "\C", "\")
      decode = replace(decode, "%27", "''")
     
      params = split(decode, "&", -1)
     
      ReDim pParams(UBound(params), 1)
     
      for i = 0 to UBound(params)
        couple = split(params(i), "=", -1)
        pParams(i, 0) = couple(0)
        if UBound(couple) = 0 then
          pParams(i, 1) = ""
        else
          pParams(i, 1) = couple(1)
        end if
      next
     
      bParamExist = true
    end sub
     
    public function getIndice(param)
      ' Retourne l'indice du paramêtre param, sinon -1
      if bParamExist = false then
        getIndice = -1
        exit function
      end if
     
      dim i, j
     
      j = -1
      for i = 0 to UBound(pParams)
        if pParams(i, 0) = param then
          j = i
        end if
      next
      getIndice = j
    end function
     
    public function getValeur(param)
      ' retourne la valeur du paramêtre param, sinon null
      dim i
      i = getIndice(param)
      if i <> -1 then
        getValeur = pParams(i, 1)
      else
        getValeur = null
      end if
    end function

  7. #7
    Expert confirmé
    Avatar de ced600
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2006
    Messages
    3 364
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Août 2006
    Messages : 3 364
    Par défaut
    Ce que je voulais dire c'est montre nous le code où tu as mis la solution proposée, c'est à dire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim strNom
    strNom = Request.Form("nom")
    Je demande cela, parce que vu ton erreur, c'est qu'il doit manquer quelque chose dans ton code.
    Je ne suis pas sur que REQUEST soit un objet connu par défaut par l'interpréteur vbs.
    Il faut peut être faire un getobject d'un autre objet qui contiendrais l'objet REQUEST.
    Donc je me disais qu'avec ton script, on saurais ce que tu as fait, et quelqu'un qui connait bien le sujet reconnaîtrais peut être l'erreur, ou l'oublie.

Discussions similaires

  1. Récupération des valeurs d'un formulaire
    Par réciproxy dans le forum Langage
    Réponses: 5
    Dernier message: 08/03/2013, 04h45
  2. [MySQL] récupération des valeurs d'un formulaire d'une page dans une autre page
    Par CSI2012 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/02/2013, 13h43
  3. Réponses: 12
    Dernier message: 20/02/2011, 18h17
  4. Récupération des valeurs d'un formulaire
    Par budkiller dans le forum PL/SQL
    Réponses: 9
    Dernier message: 21/10/2008, 17h51
  5. Réponses: 3
    Dernier message: 21/05/2007, 15h37

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