Toon posts:

[ASP]Groot formulier

Pagina: 1
Acties:

Verwijderd

Topicstarter
Voor mijn voetbalclub ben ik bezig met een site en ze hebben me gevraagd ook het 'programma van het komend weekend' in het CMS op te nemen.

Nu zijn we een vrij grote club en bestaat het programma dus uit vreselijk veel velden. Niet alleen de wedstrijd, maar ook de aanvangstijd, scheidsrechter, veld, etc etc van een wedstrijd moet uiteindelijk in een tabel terechtkomen.

Nu heb ik een formulier gemaakt, met totaal zo'n 700 velden die ingevoerd kunnen worden. Uiteraard worden alleen de velden die ingevuld zijn getoond, maar het probleem zit nu in mijn sql query die groteske vormen gaat aannemen. Elk veld (700 dus) moet in de query terechtkomen en dat is me daar een ^$#^% werk ;).

Is er geen handigere methode om grote hoeveelheden geposte data uit verschillende invoervelden af te handelen?

  • Gert
  • Registratie: Juni 1999
  • Laatst online: 05-12-2025
Ik mag hopen dat het niet allemaal in een keer in de db gestopt moet worden?

Dan zou ik het opsplitsen in kleinere dingen, bijvoorbeeld eerste de wedstrijd, daarna de details als veld en de gozer met fluitje etc.

  • DukeMan
  • Registratie: Mei 2000
  • Niet online
Wat je moet doen, is op je ontvangende pagina een loop maken om je form uit te lezen. hiermee moet je query opbouwen!

Op volgende manier kan je je form uitlezen:
code:
1
2
3
4
5
6
7
8
9
' De veldnamen
for intteller = 1 to Request.form.Count 
  strQuery = strQuery & Request.form.Key(intteller) & ", " 
next

' De veldwaardes
for intteller = 1 to Request.form.Count 
  strQuery = strQuery & Request.form.Item(intteller) & ", " 
next

Je kan deze dus eerst doorlopen om in je query je velden aan te maken en vervolgens na je "VALUES" de waarde!

succes.

Verwijderd

Topicstarter
Jee, 't is wat laat, maar ik kan helaas nu pas de replies lezen ;)
Ik mag hopen dat het niet allemaal in een keer in de db gestopt moet worden?
Dan zou ik het opsplitsen in kleinere dingen, bijvoorbeeld eerste de wedstrijd, daarna de details als veld en de gozer met fluitje etc.
Ik zou eerlijk gezegd niet weten wat hier het voordeel van is. Mijn db wordt er volgens mij niet kleiner op, en je zou steeds in andere tabellen moeten zoeken, lijkt me dat het dan niet sneller wordt?


Gerts optie:
code:
1
2
3
4
5
6
7
8
' De veldnamen
for intteller = 1 to Request.form.Count 
  strQuery = strQuery & Request.form.Key(intteller) & ", " 
next
' De veldwaardes
for intteller = 1 to Request.form.Count 
  strQuery = strQuery & Request.form.Item(intteller) & ", " 
next

In het programma moeten alleen de velden worden weergegeven die ingevuld zijn. De ingevulde velden moeten in een tabel van 7 TD'tjes per keer worden getoond. Als ik met deze code een bepaald veld niet zou invullen (kleedkamer is bijvoorbeeld nog niet bekend), zou hij die niet meetellen en is mijn opmaak vern**kt...
Of zie ik dat verkeerd?

Voorlopig ben ik met een monnikenwerk bezig om alle velden en datbasevelden te vullen en uit te lezen, maar ik heb het idee dat Gert op de goede weg is om e.e.a. makkelijker te maken.

Iemand die me nog een stapje verder kan helpen? Of is Gerts gedachtengang de juiste?

  • Bobco
  • Registratie: Januari 2001
  • Laatst online: 30-10-2023

Bobco

I used to dream about Verona.

Op maandag 10 juni 2002 03:29 schreef jackinthebox het volgende:
Jee, 't is wat laat, maar ik kan helaas nu pas de replies lezen ;)
[..]

Ik zou eerlijk gezegd niet weten wat hier het voordeel van is. Mijn db wordt er volgens mij niet kleiner op, en je zou steeds in andere tabellen moeten zoeken, lijkt me dat het dan niet sneller wordt?
[..]
Iemand die me nog een stapje verder kan helpen? Of is Gerts gedachtengang de juiste?
Je hebt vat wel een database-structuur ontworpen voordat je hiermee begon, toch? Laat die eens zien en iedereen hier kan zinnige commentaren leveren.

De opmerking van Gert dat je de zaak moet splitsen is inderdaad de juiste weg. Je hebt immers teams, wedstrijden. locaties en scheidsrechters die allemaal in een bepaalde relatie met elkaar staan.

Er zijn natuurlijk ook andere dingen die een rol spelen. Ik kan me voorstellen dat niet alle gegevens bekend zijn op het moment dat ze ingevoerd moeten worden. Het is dan handig om bepaalde dingen optioneel te kunnen vullen. Je noemde zelf het punt van de kleedkamer al. Dit hoeft trouwens geen invloed te hebben op je lay-out. Je kunt altijd in je code checken of dat veld gevuld is en dan een tekstje neerzetten als 'nnb'...

With the light in our eyes, it's hard to see.


Verwijderd

Topicstarter
Op maandag 10 juni 2002 12:11 schreef Bobco het volgende:

[..]

Je hebt vat wel een database-structuur ontworpen voordat je hiermee begon, toch? Laat die eens zien en iedereen hier kan zinnige commentaren leveren.

De opmerking van Gert dat je de zaak moet splitsen is inderdaad de juiste weg. Je hebt immers teams, wedstrijden. locaties en scheidsrechters die allemaal in een bepaalde relatie met elkaar staan.

Er zijn natuurlijk ook andere dingen die een rol spelen. Ik kan me voorstellen dat niet alle gegevens bekend zijn op het moment dat ze ingevoerd moeten worden. Het is dan handig om bepaalde dingen optioneel te kunnen vullen. Je noemde zelf het punt van de kleedkamer al. Dit hoeft trouwens geen invloed te hebben op je lay-out. Je kunt altijd in je code checken of dat veld gevuld is en dan een tekstje neerzetten als 'nnb'...
De huidige databasestructuur voor het wedstrijdprogramma is platter dan plat. Een UserID, een datum en voor de rest alle gegevens uit de ingevoerde velden (datumza1, wedstrijdza1,aanvangza1,veldza1,scheidsrechterza1,nummerza1,vertrekza1,telefoonza1 en dan ook weer voor het tweede veld voor de wedstrijden op zaterdag etc.. en natuurlijk de wedstrijden op zondag, maandag, etc..)zitten in één tabel.

Ik heb er uiteraard aan zitten denken om dit op te splitsen (tabel voor de wedstrijden op zaterdag, zondag, etc), maar dan zou ik alle gegevens over meerdere tabellen uitsmeren en hiermee zou ik nog steeds al het werk moeten doen dat ik nu ook doe. Toch?
Pagina: 1