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

ASP Discussion :

Champs cachés = troncature?


Sujet :

ASP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 25
    Points : 14
    Points
    14
    Par défaut Champs cachés = troncature?
    Bonjour!
    J'ai un léger problème : je dois manipuler des données venu d'un formulaire tout bête en HTML et les inscrire dans une base de données XML. L'opération se déroule comme suit :
    1) Entrée de données dans le formulaire
    2) Passage des données saisies vers une page ASP VBscript pour affichage et confirmation des données entrées
    3) Repassage de paramètres entrés pour cette fois écriture dans le fichier XML.

    Pour récupérer les paramètres de formulaire HTML (utilisant la méthode POST), j'utilise par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    <% dim Titre
    Titre=Request.Form("Form_Titre") %>
    ce qui se passe bien.
    Pour récupérer une nouvelle fois les données sur la page suivante, la page d'écriture, ce code ne fonctionne pas (normal) car les champs n'existent pas dans la page de vérification qui ne procède qu'à l'affichage.
    J'ai donc créé des champs HTML cachés qui sont validés lors du clic sur le bouton "Confirmer". ces champs cachés sont définis comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <form method="post" action="ecriture.asp">
    <input type="hidden" name="Verif_Titre" value=<%=Titre%>>
    <input type="submit" value="Confirmer">
    </form>
    Logiquement, cela devrait marcher de la même manière que la page précédente, or, quand je récupère dans ecriture.asp mes champs (comme Titre), avec le même principe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <%
    dim Titre
    Titre=Request.Form("Verif_Titre")
    %>
    et que j'affiche Titre, je n'ai que le premier mot s'il s'agit d'une chaîne de caractères comportant des espaces.
    Ainsi, La Guerre des Etoiles devient La, ce qui est embêtant.
    D'où viendrait mon erreur, selon vous?
    Merci d'avance!

  2. #2
    Expert confirmé
    Avatar de pc75
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    3 662
    Détails du profil
    Informations personnelles :
    Âge : 69
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2004
    Messages : 3 662
    Points : 4 047
    Points
    4 047
    Par défaut
    Bonjour,

    Je pense à ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="hidden" name="Verif_Titre" value="<%=Titre%>">

  3. #3
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Salut,

    Citation Envoyé par pc75
    <input type="hidden" name="Verif_Titre" value="<%=Titre%>">
    Chez moi il faut un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="Verif_Titre" value="<%response.write(Titre)%>">
    Et ça marche mm sans les guillemets. Dans l'absolu il vaut peut-être mieux les mettre.
    Entre parenthese, je ne vois pas l'intéret d'utiliser la variable "titre". Tu peux directement faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="Verif_Titre" value="<%response.write(Request.Form("Form_Titre"))%>">
    Pourquoi pas (pas essayé).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="hidden" name="Verif_Titre" value="<%=Request.Form("Form_Titre")%>">

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 25
    Points : 14
    Points
    14
    Par défaut
    Ca marche! Les parenthèses ne tronquent plus rien. J'imagine que lors de l'interpretation, ça devait donner un truc du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="hidden" name="champ1" value=une chaine>
    et vu qu'il y avait un espace, il devait ne prendre que le premier mot, alors qu'avec les parenthèses, tout est encadré. Je pensais qu'il écrirait sur la page <%=Titre%> en toutes lettres mais il n'en est rien.

    En tout cas, merci bien!!

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

Discussions similaires

  1. problème de champ caché
    Par root76 dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 31/07/2006, 17h31
  2. Problème avec le recuperation d'un champ caché
    Par gregal dans le forum Langage
    Réponses: 2
    Dernier message: 08/12/2005, 13h20
  3. [Debut.] Champ cache et survie d'une variable
    Par Marc_3 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 28/07/2005, 16h44
  4. Réponses: 3
    Dernier message: 27/07/2005, 15h12
  5. mettre a jour un champ caché d'une fenetre parente
    Par le-stagiaire dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/06/2005, 14h06

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