Toon posts:

[ASP] Checkbox issue

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben nieuw met ASP en probeer het volgende voor elkaar te krijgen. Enkele checkboxen die gelijktijdig aangevinkt kunnen worden dus en opgevangen moeten worden in een Access database. Ik heb de numerieke veldjes leeftijd_van en leeftijd_tot voorzien in de database.

De volgende checkboxen worden weergegeven:

value 1 (tussen 10 en 12 jaar)
value 2 (tussen 14 en 16 jaar)
value 3 (tussen 16 en 18 jaar)
value 4 (tussen 18 en 21 jaar)

Als men bijvoorbeeld alles selecteert moet leeftijd_van in de database opgevuld worden met 1 en leeftijd_tot 4. Selecteert men bijvoorbeeld enkel optie 2 en 3 moet de database opgevuld worden met leeftijd_van 2 en leeftijd_tot 3, enz...

Hoe krijg ik dit het best voor mekaar? Ik ben aan het proberen met een min/max functie maar krijg dit niet aan de praat (functies weggelaten, krijg al een fout op de splitregel):

code:
1
2
3
aLeef = split(Request.Form("leeftijd_id"), ",");
Response.Write "<FONT SIZE=""+1""><B>Min = </B>" & Min(aLeeftijd) & "</FONT><BR><BR>" & vbCrLf
Response.Write "<FONT SIZE=""+1""><B>Max = </B>" & Max(aLeeftijd) & "</FONT><BR><BR>" & vbCrLf

[ Voor 5% gewijzigd door Verwijderd op 28-10-2006 14:24 ]


Verwijderd

Allereerst, dat met die splitfunctie gaat natuurlijk nooit lukken 8)7 Je wilt op die manier alle checkboxen er uit krijgen? Dat moet je anders doen. Je kunt ze bijv. allemaal dezelfde naamgeven (zie hier: http://www.asp101.com/samples/checkbox.asp) en dan met een For Each er door heen loopen en de laagste en hoogste er uit halen...

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Euh, Min/Max is geen statement/functie in ASP; ik vermoed dat je nu SQL en ASP door elkaar aan het halen bent. Je zult zelf een stukje code moeten schrijven om de min/max te bepalen maar dat is geen rocket science; ik adviseer je toch nog heel even wat tutorials ASP danwel SQL te volgen want dit is redelijk basic stuff.
Verwijderd schreef op zaterdag 28 oktober 2006 @ 15:34:
Allereerst, dat met die splitfunctie gaat natuurlijk nooit lukken 8)7
En split is prima te gebruiken mits je, zoals je zélf al aangeeft, de checkboxes dezelfde naam geeft. En dan heb je helemaal geen for-each nodig maar kun je gewoon door je teruggekregen array heen wandelen om te kijken welke waardes er in zitten.

[ Voor 40% gewijzigd door RobIII op 28-10-2006 16:23 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Topicstarter
Krijg het nog steeds niet aan de praat. Ik maak overigens gebruik van javascript, en dus geen vbscript. In vbscript krijg ik het wel opgevangen:

code:
1
2
3
4
5
6
7
8
9
response.Write(x_leeftijd)
    arrLeeftijd = split(x_leeftijd, ",")
    response.write("<br/>")
    response.write("loop through the array : ")
    response.write("<br/>")

    For i = LBound(arrLeeftijd) TO UBound(arrLeeftijd)
        Response.Write arrLeeftijd(i) & "<BR />"
    Next


Het alternatief voor javascript is mij nog niet helemaal duidelijk. Eveneens lost het zoeken naar het maximum en minimum mijn probleem niet op nu ik er bij nadenk.

Stel dat men de 1ste en de 3de checkbox aanvinkt, dan zou leeftijd_van 1 als waarde krijgen, en leeftijd_tot 3 ; en lijkt het dus dat de 2de ook aangevinkt werd.

Is er in het algemeen gewoon geen efficiëntere oplossing die beantwoordt aan de probleemstelling in mijn eerste post. Ik ben wel gebonden aan de databasestructuur (2 integer veldjes, leeftijd_van en leeftijd_tot).