Bonjour;
J'ai créé un tableau dans une page asp. Je veux transmettre cette variable tableau vers une autre page, mais je sais pas comment le faire.
Merci de me donner des idées.
Bonjour;
J'ai créé un tableau dans une page asp. Je veux transmettre cette variable tableau vers une autre page, mais je sais pas comment le faire.
Merci de me donner des idées.
Salut,
C'est un tableau à combien de dimensions?
A+
"Winter is coming" (ma nouvelle page d'accueil)
Salut;
C'est un tableau à 10 cases.
Je pense à créer des variables séparées avec index, à l'aide d'une boucle for . Comme ça :
Et comme ça je pourrais par la suite les récupérer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part <input id="variable<%=i%>" name="variable<%=i%>" maxlength="200" type="text" value="<%=rec("nom")%>">
J'ai pas encore terminé l'implémentation. Je sais pas si ca marchera par la suite.
Merci pour toute remarque.
J'ai pas pu récupérer les valeurs dans les variables que j'ai nommé de facon dynamique.
En fait, je dois faire une boucle et utiliser les valeurs de ses variables pour mettre à jour la base de données.
D'ailleurs, lorsque j'essaye d'afficher les valeurs de ces variables, je vois qu'elles sont vides. Est ce que cela signifie que les valeurs ne sont pas transmises de la première page (ou j'ai déclaré les variables, voir le post précédent)?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 for i=1 to 10 'Response.Write(variable&i) 'Response.Write(id&i) sql=" update tableXX set" & _ " nom ="&DBStrSQL(variable&i) & _ " where id="&DBNumSQL(id&i) DBExecute(sql) next
Merci pour vos aides.
I parait que le problème est dans l'envoi des variables d'une page à l'autre.
Est ce quelqu'un peut me donner une idée pour transmettre les variables et les récupérer dans une autre page et faire la mise à jour de la bd?
Merci d'avance
Par une variable de session ?
voici le code que j'utilise pour utiliser un tableau dans mes pages
ok ce n'est peut être pas très code friendly mais cela fonctionne on fait comme on peut
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 'dans la page 1 if nGroup > 1 then 'Mise en mémoire du nombre de groupes complémentaires nGroup = nGroup - 1 dim arrGroupSecondLevel() redim arrGroupSecondLevel(nGroup) objRs.MoveFirst 'récupération des groupes complémentaires de l'utilisateur i = 1 while not objRs.eof if trim(objRs("USERLEVEL")) = 2 then arrGroupSecondLevel(i) = trim(objRs("GROUPNUM")) i = i + 1 end if objRs.MoveNext wend end if session("sGroup") = arrGroupSecondLevel session("nGroup") = nGroup 'et dans la page 2 arrNumGroup = session("sGroup") for i = 1 to session("nGroup") sGroup= sGroup & arrNumGroup(i) & "#" next
Merci pour votre réponse.
Mais je vois pas pratique d'utiliser plusieurs variables session (dans mon cas 30), cela va prendre de la mémoire dans le serveur (je suis pas sure de l'information).
En fait, j'ai trois tableaux, chacun contenant 10 valeurs. J'ai pu afficher et récupérer leurs valeurs dans la page2, mais j'ai pas pu les utiliser pour faire un update de la base de données.
Je m'explique plus, j'ai créé 3 tableaux à 10 variables avec les noms composés : variable&i , i = compteur jusqu'à 10 dans chaque tab.
Je voudrais faire, la mise à jour de la bd dans une boucle for, ca nécessite une fct en asp pour récupérer la valeur d'une variable à partir de son nom (puisque je connais le nom de la variable mais pour faire le update de dois savoir sa valeur)
Quelqu'un pourra m'aider
Merci d'avance.
Franchement quel que soit le nombre de valeurs, je vois pas l'interet d'utiliser des tableaux pour les stocker.
Une simple chaine avec des séparateurs suffit. La fonction split te permet de le reconstituer en une seul instruction.
"Winter is coming" (ma nouvelle page d'accueil)
SVP, est ce qu'il y'a en asp une fonction qui prend en parametre l'id d'un champs input ss forme de chaine de caractère et retourne sa valeur.
value1=fonction("id1")Merci pour toute réponse.
A ma connaissance, en ASP la lecture d'un formulaire se fait par le nom du champ pas par l'id.
A+
"Winter is coming" (ma nouvelle page d'accueil)
Bonjour;
Après plusieurs essais, j'ai pas pu récupérer mes variables dans la deuxième page meme sous forme d'une chaine de caractères.
Je vous donne le source des deux pages. Prière de m'aider à les corriger :
Note : Les variables que je voudrais transmettre de page1 vers page2 sont : LeId1, Detail_EN1, Adresse_EN1 (et tous ceux utilisés avec i)
Merci pour toute aide.
Et bon courage à tous.
je viens de regarder rapidement tes pages (peut être trop) mais je ne vois pas d'action dasn tes formulaires alors tu fait comment pour passer d'une page à l'autre ?
Merci pour l'interet que vous portez à mon pb.
J'utilise un bouton au niveau de page1.asp qui appelle une fonction javascript faisant un submit de la page.
C'est bien ça la question?
Code : Sélectionner tout - Visualiser dans une fenêtre à part <input class="controle" id="Valider" name="Valider" type="button" value="Valider tous" onClick="JavaScript:fourmaSubmit('page2.asp');"align="right"></input>
Bonjour,
Le problème est que tu veux récupérer une variable en utilisant son nom (vue que tu génère les noms de tes variables d'une manière dynamique). Voir par exemple : LeDetail_EN&i retourne 1 si on suppose que i est égal à 1 et sachant que en réalité tu n'as pas de variable nommée LeDetail_EN mais juste des variables nommées LeDetail_EN1, LeDetail_EN2 etc.
Ce qu'il faut faire donc c'est essayer de récupérer la valeur de ta variable en utilisant son nom ce qui correspond dans d'autres langages comme le java script à utiliser la fonction eval. Pour l'ASP je pense qu'on peut utiliser la fonction eval mais je me souviens plus très bien donc c'est à toi d'essayer et de me dire si c'est OK.
En somme ton code final doit être du genre :
...
...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 for i=1 to 10 sql=" update AoiAo set" & _ " Detail_EN="&DBStrSQL(eval(LeDetail_EN&i))&"," & _ " Adresse_EN="&DBStrSQL(eval(LeAdresse_EN&i))&_ " where AoiAoId="&DBNumSQL(eval(LeId&i)) AffectedRows=DBExecute(sql) if AffectedRows<>1 then
J'ai comme même un doute par rapport au fonctionnement de la fonction eval en ASP. Je pense que c'est une fonction qui évalue seuleument les expressions et non pas les variables. Si c'est le cas, il faut faire comme suit :
...
...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 for i=1 to 10 LeDetail_EN_Value = "" LeAdresse_EN_Value = "" LeId_Value = 0 eval("LeDetail_EN_Value = LeDetail_EN"&i) eval("LeAdresse_EN_Value = LeAdresse_EN"&i) eval("LeId_Value = LeId"&i) sql=" update AoiAo set" & _ " Detail_EN="&DBStrSQL(LeDetail_EN_Value)&"," & _ " Adresse_EN="&DBStrSQL(LeAdresse_EN_Value)&_ " where AoiAoId="&DBNumSQL(LeId_Value) AffectedRows=DBExecute(sql) if AffectedRows<>1 then
Voilà, j'attends ta confirmation.
il doit faire une boucle de récupérattion
for i = 1 to n
vari = session("var"&i)
next
puis ensuite son code de traitement en utilisation var1, var2,... varn
pas besoin de eval
Merci jinitime pour ta réponse. Je vais essayer de l'implémenter. Je t'informerai par la suite du résultat
Mais j'ai pas compris la remarque de vva. Pourrais vous expliquer plus, sachant qu'on n'a pas utilisé des variables session.
par ce que j'ai probablement mal compris ton problème tu peux donc oublier ma remarque je ne procède pas de cette sorte pour soumettre et traiter un formulaire
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager