[ASP] Gegevens, in een rij, uit een formulier in een array?

Pagina: 1
Acties:

  • bdu
  • Registratie: Februari 2002
  • Laatst online: 25-05 22:19
Hallo,

Ik heb een probleempje waar ik dus echt niet uitkom...

Ik heb een formulier met meerdere invulvelden.. (zie plaatje)

Afbeeldingslocatie: http://www.yoi.nl/formulier.gif

Nu wil ik de gegevens die in het rode kader worden ingevuld op de volgende pagina als array gebruiken (of een andere oplossing, als die er is..) ... Dus dat ik de gegevens 'Naam', 'Geboortedatum' en 'Provincie' gekoppeld blijven aan 'Postcode' en 'Plaats'... Als ik nu op verzenden druk krijg ik de gegevens van 'Naam' naast elkaar gescheiden door een komma... Hoe los is dit op...

Iemand die me kan helpen....

ps... de gegevens van 'Postcode' en 'Plaats' worden met een loop uit de database gehaald... en met die loop worden de textvelden gemaakt..

[ Voor 17% gewijzigd door bdu op 12-05-2004 11:42 . Reden: ps. toegevoegd ]


Verwijderd

Binnen ASP is daar niet zo'm mooie oplossing voor als bij PHP. Je kan je velden oploppend nummer name1, name2, name3 etc...

Dan loop je je hele Request.Form door in een loop en alle vars die beginnen met name hanteer je op die manier.

zie oude topic van mij: [rml][ ASP/VBscript] uitlezen van een array vanuit een formulier[/rml]/

  • party42
  • Registratie: Oktober 2000
  • Laatst online: 11:17
Binnen ASP is daar niet zo'm mooie oplossing voor als bij PHP.
:?

maargoed. je kunt toch een tellertje mee laten lopen met de velden? op basis daarvan maak je een array aan. voor de rest, zie sooterd.

Everyday's an endless stream, of cigarettes and magazines...


Verwijderd

Ik doelde daarop dat wanneer je gebruik maakt van php je veldnamen de naam "name[]" kan geven waarmee je een array terug krijgt, wat het geval met ASP/VBScript niet het geval is...

  • Keukenrol
  • Registratie: Maart 2004
  • Laatst online: 23-06-2025

Keukenrol

velletje??

Je kan ook de gegevens die je nu terug krijgt die door een , gescheiden zijn weer splitsen:

code:
1
2
3
4
5
6
7
<%
Dim myArr
Dim myString

myString=(GegevensDet.Fields.Item("data").Value)

myArr=split(myString,",") %>


Zo zitten ze allemaal apart in het arraytje

[ Voor 8% gewijzigd door Keukenrol op 12-05-2004 12:18 ]

Altijd handig, zo'n keukenrol


Verwijderd

dat lijkt me niet slim want als iemand een komma invult klopt het niet meer... of je moet die komma vervangen voordat je um post in wat anders zodat je um serverside weer om kan zetten zodat je kan waarborgen dat je de string die je binnen krijgt gerust op de komma kan splitten

  • Keukenrol
  • Registratie: Maart 2004
  • Laatst online: 23-06-2025

Keukenrol

velletje??

dan vervang je idd toch even eerst die ' door iets anders welke je na het splitsen weer terug zet.

Je doet bv ' vervangen door 3 x een #
niemand vult dit toch ooit in of desnoods 25x een #...boeie het gaat erom dat je idd ervoor zorg dat een komma in een ingevoerd veld geen roet in t eten gooit!

wat je ook kan doen is urlencode
maar weet niet zeker of je daar dan wat mee opschiet!

[ Voor 15% gewijzigd door Keukenrol op 12-05-2004 12:27 ]

Altijd handig, zo'n keukenrol


  • bdu
  • Registratie: Februari 2002
  • Laatst online: 25-05 22:19
Das idd balen..

Ik heb het op dit moment op een iets andere manier,

Ik heb eerst de gegevens van bv 'Naam' in een array geladen. Dan heb ik het aantal gegevens laten tellen in die array.. en dan heb ik een loopje laten beginnen die alle gegevens uit die array in een cel plaats

code:
1
2
dim array
array = split(Naam, ", ")


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<%

som = -1

aantal = (Ubound(array))

DO UNTIL som = aantal

som = som + 1

response.write "<tr>"
response.write "<td>" & array(som) & "</td>"
response.write "<td>" & arrayb(som) & "</td>"
response.write "<td>" & arrayc(som) & "</td>"
response.write "<td>" & arrayd(som) & "</td>"
response.write "</tr>"

LOOP

%>


Het nadeel hiervan is alleen dat ik nu die gegevens niet kan sorteren... want de gegevens van de ene cel zijn niet verbonden met die van de andere cel...

Of heeft iemand hier een oplossing voor?

Of zegt iemand dat ik dit beter niet zo kan doen...

  • Keukenrol
  • Registratie: Maart 2004
  • Laatst online: 23-06-2025

Keukenrol

velletje??

zou je ze niet kunnen nummeren dmv hidden fields in het formulier

zodat je krijg:

naam,1,naam,2,naam,3,naam,4

en dan de getallen gebruiken om te sorteren(op een of andere manier)

Altijd handig, zo'n keukenrol


Verwijderd

De oplossing van het sorteren is gewoon het nummeren van de velden


code:
1
2
3
naam1   |   geboortedatum1   |   provincie1
naam2   |   geboortedatum2   |   provincie2
naam3   |   geboortedatum3   |   provincie3


Als je hier gebruik van maakt kan je altijd een hele set van gegevens bij elkaar sprokkelen.

  • Keukenrol
  • Registratie: Maart 2004
  • Laatst online: 23-06-2025

Keukenrol

velletje??

als ik me niet vergis hoef je hierdoor ook niet meer te spliten toch?
aangezien de 4 naam-vakken allemaal een aparte naam hebben en apart wordt meegezonden

Altijd handig, zo'n keukenrol


  • bdu
  • Registratie: Februari 2002
  • Laatst online: 25-05 22:19
okee, ik ga er ff met worstelen.... bedankt

[ Voor 4% gewijzigd door bdu op 12-05-2004 13:51 ]


Verwijderd

opzich valt het worstelen wel mee... als je mn laatste bericht leest in de eerdere link die ik je gaf ([rml]Sooterd in "[ ASP/VBscript] uitlezen van een array va..."[/rml]) kom je al snel heel ver. Zou er een functie van maken waarbij je een key meegeeft (naam, geboortedatum etc) waarbji je de waardes terug krijgt in een array, werkt denk ik het makkelijkst

  • bdu
  • Registratie: Februari 2002
  • Laatst online: 25-05 22:19
Nu heb ik bij alle velden een nummer staan...

dus

code:
1
2
3
<input type="text" name="name1" size="20"><input type="text" name="gebdate1" size="20">
<input type="text" name="name2" size="20"><input type="text" name="gebdate2" size="20">
<input type="text" name="name3" size="20"><input type="text" name="gebdate3" size="20">


Maar hoe ga ik nu verder.. ik kom niet uit dat andere topic...(helaas)

Nu moet ik dus bij stap 2 de naam van het veld opvragen + het nummer (die sorteer ik dan) en dan, als bv. name3 bovenstaat, gebdate3 erbij zoeken... en dan een lijst van maken... Wie kan mij verder helpen...
Pagina: 1