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 :

Method Post et Select rempli dynamiquement


Sujet :

ASP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 74
    Points : 55
    Points
    55
    Par défaut Method Post et Select rempli dynamiquement
    Tout d'abord, bonjour à tous !

    Je developpe une fonctionnalité pour le logiciel que je crée.
    Celui-ci fonctionne avec un serveur IIS + ASP + SQL et pour la partie client j'utilise donc HTML et JavaScript...
    Dans cette page je souhaite rassembler pas mal d'informations.
    Une partie de celles-ci sont enregistrer dans une base commune et d'autre dans une table à part...en effet, l'utilisateur a accés à une liste d'option..ce sont ces options qui sont sauvegardées dans l'autre table...

    Pour éviter donc les multiples allez-retour entre le client et serveur ( perte de temps et de performances ), j'ai donc décider de remplir la liste en question de façon dynamique avec javascript et j'enregistre seulement à la fin.

    Cette partie fonctionne correctement ( ajouter et supprimer des options de la liste )...
    Lors du Submit impossible de récupérer le contenu de ma liste ( je précise que le traitement asp ce fait dans la même page )

    Un peu de code pour vous aider à comprendre :

    La liste en question :
    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
     
    <div align="left">
            <select name="LSTRESS" size="4" <%=optionreadlonly%>>
    		<% qry="exec sp_liste_resident_ressource @id_resident=" & g_id_resident 
    		Set rs = Server.CreateObject("ADODB.Recordset")
    		Rs.open qry,conn
    		'response.write(qry)
    		if not Rs.eof then  
    		Do until Rs.eof %>
    		        <option value="<%=Rs.fields("id_type_ressource")%>"><%=Rs.fields("libelle_type_ressource")%></option>  
    		        <% Rs.movenext
    		loop 
    		end if 
    		Rs.close
    		set Rs=nothing %>   
         </select>				
         <% if cint(g_id_resident) =0 then %>
               <img src="image/AJOUTER.gif" width="20" height="20" Onclick="alert('Il faut préalablement créer l\'usager.');">
          <% else %>
               <img src="image/AJOUTER.gif" width="20" height="20" Onclick="CMD_AJOUTER_RESSOURCE();">
          <%end if %>
          <img src="image/SUPP.GIF"  Onclick="CMD_SUPPRIMER_RESSOURCE();" <%=optiondisabled%>>
    </div>
    La récupération des données avec la méthode post :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    if request.Form("LSTRESS").count() <> 0 then
    	for i=0 to request.Form("LSTRESS").count()
    		phrase = phrase & request.Form("LSTRESS").item(i)
    	next
    end if
    précision : Je sérialise mes données car la procédure stockée traite la chaîne que je lui envoi.

    Et l'appel à la procédure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    if trim(phrase) <> "" then
    	phrase = phrase & ","
    	qry=" exec sp_insert_resident_type_ressource @id_resident=" & g_id_resident 
    	qry=qry & ", @liste_id_type_ressource='" & phrase & "'"
    	'response.Write(qry)
    	conn.execute qry
    end if
    Vla donc au moment de sérialiser les infos de la liste, je ne récupère rien .. pourtant tous les éléments insérer avant la validation étaient bel et bien présent dans cette #!!! liste .

    Est-ce ma méthode de remplissage par javascript qui ne permet de récupérer les infos ..?

  2. #2
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    Heuuuu...Je ne suis pas certain de bien comprendre où tu veux en venir.

    Quand tu valides un formulaire qui comprend des SELECT, seules les options sélectionnées sont envoyées, et donc elles seules se retrouvent dans la collection request.form.

    Donc, dans ton cas, une seule option arrivera à la routine de récupération puisque ton SELECT n'est pas un "multiple".

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 74
    Points : 55
    Points
    55
    Par défaut
    Bein en fait j'ajoute des éléments dynamiquement dans la liste mais lorsque je veux les récupérer par la méthode post je n'ai rien...

    Alors je me demande si le fait d'ajouter des éléments dans une liste d'option dynamiquement avec javascript n'est pas valable .

  4. #4
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    Si tu peux voir les options ajoutées par le code javascript, c'est que ça marche.

    Mais, au risque de me répéter: tu peux avoir mille options dans un SELECT, seule l'option sélectionnée sera transmise par la méthode POST ( ou, si tu utilises un SELECT MULTIPLE: seules les options sélectionnées seront transmises ).

    Si tu veux pouvoir récupérer toutes les données que tu ajoutes pour l'instant comme options d'un SELECT, tu dois procéder autrement et créer autant de champs texte que tu as de données à transmettre.

Discussions similaires

  1. Réponses: 21
    Dernier message: 01/09/2010, 20h40
  2. Récuperation valeur select rempli dynamiquement
    Par titi6913 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 22/07/2009, 08h47
  3. [HTTP]passage de parametres via la methode post
    Par abdou.sahraoui dans le forum Entrée/Sortie
    Réponses: 3
    Dernier message: 03/03/2008, 14h11
  4. les tag select remplie dynamiquement
    Par ayoub2010 dans le forum Struts 1
    Réponses: 8
    Dernier message: 10/04/2007, 09h03
  5. Passage de variable par methode post ?
    Par oazar dans le forum Flash
    Réponses: 33
    Dernier message: 16/10/2003, 17h03

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