Toon posts:

[ASP]Variable waarde als nieuwe var

Pagina: 1
Acties:
  • 395 views sinds 30-01-2008
  • Reageer

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik ben bezig met een standaadscript dat ik voor meerdere formulieren kan gebruiken. Wat ik wil is de naam van een veld als variable naam gebruiken en hier de waarde van dit veld aan hangen. Wat ik nu heb:

ASP:
1
2
3
4
5
IF Request("formsend") = 1 Then
    For Each strName in Request.QueryString 
        strName = Request.Querystring(strName)
    Next
End If


Weet iemand hoe ik aan asp duidelijk maak dat ik niet strName maar de waarde vna strName als variable naam wil gebruiken?

Acties:
  • 0 Henk 'm!

  • j_du_pee
  • Registratie: Maart 2000
  • Laatst online: 23-09-2024

j_du_pee

du pain, du vin, du pee

Allereerst twee opmerkingen:
- Dit is een vbScript probleem en geen ASP probleem
- Waarom wil je voor die waarden een andere variabele gebruiken :? M.I. is het niet bepaald een best practice om op deze manier nieuwe variabelen aan te maken en zou je iedere oplossing kunnen bouwen met de variabelen die je hebt, eventueel opgeslagen in een array of dictionary.

Ik heb het nooit gebruikt (om bovenstaande reden) maar volgens mij moet je vraag op te lossen zijn met de eval functie.

kaart != map && bottel != fles
Wacht op antwoord


Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 17:13

gorgi_19

Kruimeltjes zijn weer op :9

waarom gebruik je geen Array / Dictionary?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
gorgi_19 schreef op maandag 20 augustus 2007 @ 12:42:
waarom gebruik je geen Array / Dictionary?
:9~ Jij bent m'n held voor vandaag. een dictionary is inderdaad de oplossing.

Acties:
  • 0 Henk 'm!

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 13-12-2024
Je leest je querystring uit, waaruit ik afleid dat je als method GET gebruikt.
Je kunt beter een post doen en dan Request.Form.

En als je het helemaal dynamisch wilt maken kun je ook gewoon door je Request.Form heen loopen, dan heb je geen variabelen nodig.

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Thx voor alle reacties, Ik heb het uiteindelijk opgelost met het dictionary object. Nog een klein probleempje, Ik gebruik onderstaande code om alle items uit het Request.form object in een var te zetten.

For Each strName in Request.form
body = strName & ": " & Request.form(strName) & Chr(13) & Chr(10)
Next

Probleem hiermee is dat de volgorde van de items helemaal naar z'n grootje gaat. Weet iemand misschien wat het probleem hier is? als ik de Request.form gewoon uitlees klopt deze wel.

Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 09-10 22:53

TeeDee

CQB 241

Laat eens de volgorde zien?

[ Voor 43% gewijzigd door TeeDee op 21-08-2007 14:45 ]

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hmm, k heb het al opgelost.

Heb ipv de For each statement het volgende gedaan:

ASP.NET Visual Basic:
1
2
3
for i = 1 to Request.Form.Count
        body = body & Request.Form.Key(i) & ": " & Request.Form.Item(i) & Chr(13) & Chr(10) 
next

Acties:
  • 0 Henk 'm!

  • 4of9
  • Registratie: Maart 2000
  • Laatst online: 13-12-2024
De volgorde is idd niet gegarandeerd maar is wel op te lossen:

http://www.aspfaqs.com/aspfaqs/ShowFAQ.asp?FAQID=64

te laat :)

[ Voor 5% gewijzigd door 4of9 op 21-08-2007 14:56 ]

Aspirant Got Pappa Lid | De toekomst is niet meer wat het geweest is...


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
4of9 schreef op dinsdag 21 augustus 2007 @ 14:56:
De volgorde is idd niet gegarandeerd maar is wel op te lossen:

http://www.aspfaqs.com/aspfaqs/ShowFAQ.asp?FAQID=64

te laat :)
Toch thx voor je snelle reply :)
Pagina: 1