[ASP] Enquête > dbase > resultaten

Pagina: 1
Acties:

  • oZy
  • Registratie: Juli 2001
  • Laatst online: 10:46
Ok.. ik probeer een enquête te maken, via een html formuliertje.. daarna naar een asp file die alles netjes in een database propt, en daarna kan je via een resultaten pagina zien hoeveel procent er antwoord gaf op de betreffende vragen enzo.

Maar nu twijfel ik of ik het wel efficient heb gedaan. Het zijn 14 vragen, met gemiddeld 14 keuze mogelijkheden variërend van checkbox / radio button / tekst. Ik kon geen andere manier bedenken dan voor iedere optie van de checkboxes en tekstvelden een aparte kolom te maken in de database (dus Vraag1OptieA, Vraag1OptieB etc), en voor iedere radio button één kolom te maken (Vraag2) met de gekoze waarde.

Na het invullen van het formulier worden de gegevens dus ingevoerd in deze dbase, en daarna kan je via een andere pagina bekijken wat de resultaten zijn.. en daar begin ik dus te twijfelen, want dit wordt dus iets van 14 * 5 keer: recordsets openen, percentage berekenen, variabel maken (ResultaatVraag1OptieA bijv.) recordset sluiten.

Ik wéét gewoon zeker dat dit veel makkelijker kan maar er begint nog geen lampje te branden...

Ik denk zelf aan iets als bijv. voor iedere optie het totaal aantal keer dat het aangekruist is in de database zet, in plaats van voor iedere keer dat iemand de enquete invult een nieuwe record te maken en bij de aangekruiste opties een 1'tje te zetten.

Of anders zou ik de resultaten pagina aan het eind van de enquete gewoon 1 keer moeten draaien, en daarna een html versie met de hardcoded resultaten bewaren (maar ivm volgende enquetes die misschien live resultaten willen weergeven..).

En anders moet ik gewoon een class maken die de resultaten even opvist, ipv al die queries steeds uit te tikken.. maar dat haalt de overhead niet weg i guess!

iemand nog een idee? :)

PS. Het werkt dus wel, maar ik vroeg me alleen af of het beter kan. Normaal heb ik zoiets van.. als het werkt dan moet je er niets meer aan veranderen, maar ik vind dit wel beetje erg dubieus.

  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

Vragen
---------
VraagID
Vraag
VraagType


StandaardAntwoorden
----------
VraagID
AntwoordID
Value


UserAntwoorden
--------------
UserID
VraagID
AntwoordID
Value




Ofzo.. er zijn nog wat betere methoden te bedenken, maar geen zin om dat in te tikken.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


  • oZy
  • Registratie: Juli 2001
  • Laatst online: 10:46
mjah.. mn normalisatie is nogal brak ja, maar das meer uit luiheid als uit onkunde.. want het moet strax ook weer allemaal naar excel geexporteerd worden etc,.. en bovendien is het een 'tussedoortje' waar ik eigenlijk helemaal geen tijd voor heb.

Maar zijn er dingen die efficiënter kunnen met de huidige database?

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 09-09 20:58

Janoz

Moderator Devschuur®

!litemod

Op dinsdag 19 maart 2002 11:59 schreef oZy het volgende:
mjah.. mn normalisatie is nogal brak ja, maar das meer uit luiheid als uit onkunde.. want het moet strax ook weer allemaal naar excel geexporteerd worden etc,.. en bovendien is het een 'tussedoortje' waar ik eigenlijk helemaal geen tijd voor heb.

Maar zijn er dingen die efficiënter kunnen met de huidige database?
Minder lui zijn zou een begin kunnen zijn :)

Ik merk heel vaak dat mensen aan het begin de kortst mogelijke oplossing kiezen omdat ze 'lui' zijn... Echter, op de lange termijn zal je dit alleen maar tegen gaan werken. Aan het begin een beetje extra werk zorgt ervoor dat je later minder tegen vervelende problemen aanloopt..

Trouwens.. Waarom moeten wij aangeven wat er beter kan, terwijl je zelf te lui bent om je data ff te normalizeren? ;)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • oZy
  • Registratie: Juli 2001
  • Laatst online: 10:46
OK OK verkeerde woordkeuze, als ik lui was geweest dan had ik het helemaal niet gedaan, aangezien het mijn werk niet is.
Ik merk heel vaak dat mensen aan het begin de kortst mogelijke oplossing kiezen omdat ze 'lui' zijn... Echter, op de lange termijn zal je dit alleen maar tegen gaan werken. Aan het begin een beetje extra werk zorgt ervoor dat je later minder tegen vervelende problemen aanloopt..

Trouwens.. Waarom moeten wij aangeven wat er beter kan, terwijl je zelf te lui bent om je data ff te normalizeren?
Mja.. das dus lekker nuttig. Ten eerste heb ik al gezegd dat ik het niet goed genormaliseerd heb om het strax makkelijk te kunnen exporteren naar excel, en ten tweede heb je wel érg snel je oordeel klaar. Dat je deze zeer interessante levens ervaring met ons wilt delen is verder prima, maar lever daarnaast dan ook wat relevant commentaar. :Z

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Op dinsdag 19 maart 2002 11:50 schreef dusty het volgende:
Ofzo.. er zijn nog wat betere methoden te bedenken, maar geen zin om dat in te tikken.
Zoiets gebruik ik idd ook in mijn enquete voor T.net :)

Werkt prima :)

Verwijderd

Ik denk zelf aan iets als bijv. voor iedere optie het totaal aantal keer dat het aangekruist is in de database zet, in plaats van voor iedere keer dat iemand de enquete invult een nieuwe record te maken en bij de aangekruiste opties een 1'tje te zetten.
? je gaat om iets te tellen toch geen nieuw record maken, tenzij je verder alles wilt bewaren van de persoon die dat gedaan heeft...
maar je kan toch gewoon voor antwoord x een veldje count maken
waarbij je gewoon steeds plus 1 doet..?
als je op ip wilt blokkeren... kun je dat met cookies doen.. of beter maak een veld ip
en vul daar alle ip nummers in... (met komma scheiden) en dan kun je het redelijk snel zoeken in de string of het ip nummer al voorkomt...
Pagina: 1