Toon posts:

[asp] Variabele variabelenaam

Pagina: 1
Acties:

Verwijderd

Topicstarter
In een asp-pagina wil ik een bepaalde variabele als het ware dynamisch aanmaken.

Stel ik heb een array, myArray()
De eerste waarde is: myArray(0) = "fiets"

Hoe kan ik nu een variabele maken die 'fiets' heet, en daar weer een bepaalde waarde aan toekennen, zodat ik later bijv. response.write (fiets) kan doen?

Hopelijk is mijn omschrijving duidelijk.

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

Waarom zou je dat willen ?
Is een array met een index als 'fiets' niet veel netter en makkelijker?

Dat het in sommige talen kan zegt nog niet dat je het in die talen ook moet doen ;)

Verwijderd

Ik weet niet zeker of je dit bedoelt maar bekijk dit eens: Dictionary Object.
code:
1
2
3
4
5
6
7
Dim d
Set d=Server.CreateObject("Scripting.Dictionary")
d.Add "re","Red"
d.Add "gr","Green"
d.Add "bl","Blue"
d.Add "pi","Pink"
Response.Write("The value of key gr is: " & d.Item("gr"))

Output:

The value of key gr is: Green

Verwijderd

Topicstarter
de reden dat ik zoiets wil maken, is het volgende:

Ik wil een soort standaard formulier-verwerk scriptje schrijven. Deze moet uit een gesubmit-formulier alle gegevens halen, dus ook de naam van de velden. Daarna worden de gegevens gecontroleerd, zodat er geen lege tussen zit.

Is dat wel het geval, dan moet dat aangegeven worden, en het script moet niet verder verwerkt worden. Maar velden die wel ingevuld zijn, moeten ook onthouden worden.

Nu dacht ik aan zoiets als die variabele variabelen namen.

Stel je hebt twee invoervelden.
code:
1
2
<input type="text" name="fiets" value="">
<input type="text" name="auto" value="">

Die worden verstuurd, en gecontroleerd.
Maar als zeg de eerste is ingevuld (met batavus), en de tweede niet, dan moet dus de eerste weer gevuld worden met de waarde batavus.

Ik dacht aan iets van:
code:
1
2
<input type="text" name="fiets" value="<%=fiets%>">
<input type="text" name="auto" value="<%=auto%>">

Wat er dus moet gebeuren, is dat de naam van een veld (zeg fiets), later zelf weer een variabele is.

Je kunt inderdaad met Arrays werken, alle gegevens van de velden in arrays doen, en dan iets van:
code:
1
2
<input type="text" name="fiets" value="<%=formArray(0)%>">
<input type="text" name="auto" value="<%=formArray(1)%>">

maar dat vind ik nogal lastig, aangezien fiets misschien niet op nummer 0 staat, maar op 1. Dat is niet altijd te voorzien.

Hopelijk snapt iemand dit verhaal nog :P

Verwijderd

/me is de draad kwijt :?

Als je een form submit, dan heb je in het Request.Form collection alle waarden zitten. Waarom zou je ze dan ook nog in dynamisch aangemaakte variabelen willen zetten?

Verwijderd

Topicstarter
Op dinsdag 16 juli 2002 16:06 schreef MrX het volgende:
/me is de draad kwijt :?

Als je een form submit, dan heb je in het Request.Form collection alle waarden zitten. Waarom zou je ze dan ook nog in dynamisch aangemaakte variabelen willen zetten?
Dat klopt. Maar dat is voor 1 form-submit. Wat ik wil is iets maken zodat elk willekeurig form gesubmit kan worden. Met een variabel aantal velden en willekeurige namen.

Verwijderd

Op dinsdag 16 juli 2002 16:13 schreef pbirkoff het volgende:

[..]

Dat klopt. Maar dat is voor 1 form-submit. Wat ik wil is iets maken zodat elk willekeurig form gesubmit kan worden. Met een variabel aantal velden en willekeurige namen.
Maar er zal maar 1 form per aanvraag verstuurd worden, dus ik zie het probleem niet.

Als ik je goed begrijp wil je verschillende forms naar hetzelde .ASP pagina willen submitten, zoals hieronder:
code:
1
2
3
4
5
6
7
8
9
<form name="a" action="verwerk.asp" method="POST">
   <input type="text" name="fiets" value="">
   <input type="submit">
</form>
...
<form name="b" action="verwerk.asp" method="POST">
   <input type="text" name="auto" value="">
   <input type="submit">
</form>

Vervolgens wil je dat in verwerk.asp het mogelijk is om allebei de forms te verwerken, right? Je moet dan alleen bedenken dat je of form a of form b verstuurt, nooit beiden.

Wat je verder in verwerk.asp wil doen is mij niet duidelijk.

Ik hoop dat het zo duidelijk wordt.

  • Crayne
  • Registratie: Januari 2002
  • Laatst online: 17-03-2025

Crayne

Have face, will travel

Hij wil waarschijnlijk een generieke .asp pagina maken waar elk willekeurige form naar toe kan linken. Deze ASP pagina verwerkt dan automatisch alle velden, onafhankelijk van hoe ze genoemd zijn of hoeveel het er zijn.

Komt dat in de buurt, pbirkoff?

Mijn Library Thing catalogus


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

gorgi_19

Kruimeltjes zijn weer op :9

Maar is het dan niet makkelijker om het zo te maken:
code:
1
2
3
For Each Item in Request.Form
    Response.Write Item & ":" & Request.Form(Item)
Next

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Op je eerste vraag: Nee, volgens mij kun je geen variabelen dynamisch aanmaken aan de hand van waardes.

Maar als ik goed begrijp wat je wil, zou een voorbeeld kunnen zijn dat je een form dynamisch aanmaakt aan de hand van waardes die in een ander (voorgaand) form zijn ingevuld...?

Pagina 1:

<INPUT NAME="FieldName" ID="FieldName">

(submit form)

Pagina 2:

<INPUT NAME="<%=Request("FieldName")%>" ID="<%=Request("FieldName")%>">

Of begrijp ik het helemaal verkeerd?

Op bovenstaande manier kun je iig een form dynamisch genereren aan de hand van de waardes van een bep. form.

Verwijderd

Inderdaad, je kan dus geen variabele variabelen aanmaken. Ik loop ook al tegen dat punt aan af en toe. Mooi balen, elke andere programmeertaal kan dat wel, behalve ASP :(

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 09:31

Crazy D

I think we should take a look.

Op woensdag 17 juli 2002 10:32 schreef voetenzalf het volgende:
Inderdaad, je kan dus geen variabele variabelen aanmaken. Ik loop ook al tegen dat punt aan af en toe. Mooi balen, elke andere programmeertaal kan dat wel, behalve ASP :(
In ASP heb je het dictionary object daarvoor, zie eerder gegeven antwoord van sig__n. Ja niet zo makkelijk als in php maar das dan ook wel heel makkelijk :P Maar t kan dus prima.
Dat _jij_ het niet kunt is wat anders, maar dan moet je je opmerking aanpassen naar
Mooi balen, ik kan dat in elke andere programmeertaal wel, behalve ASP :(

Exact expert nodig?


  • TlighT
  • Registratie: Mei 2000
  • Laatst online: 22-03 10:40
Op woensdag 17 juli 2002 10:32 schreef voetenzalf het volgende:
Inderdaad, je kan dus geen variabele variabelen aanmaken. Ik loop ook al tegen dat punt aan af en toe. Mooi balen, elke andere programmeertaal kan dat wel, behalve ASP :(
code:
1
2
3
4
5
6
7
<%
Dim sVar 
sVar = "fiets"

Execute "Dim " & sVar & ": " & sVar & "=""test"""
Response.Write fiets
%>

Kan dus wel.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 28-08 12:00

Janoz

Moderator Devschuur®

!litemod

Op woensdag 17 juli 2002 10:32 schreef voetenzalf het volgende:
Inderdaad, je kan dus geen variabele variabelen aanmaken. Ik loop ook al tegen dat punt aan af en toe. Mooi balen, elke andere programmeertaal kan dat wel, behalve ASP :(
Elke programmeer taal??? Ik ken er een heleboel die het niet kunnen. Variabele vars zijn eigenlijk alleen mogelijk bij geinterpreteerde talen. Daarnaast is het gebruik van variabele variabelen erg 'vies' en is er altijd een veel nettere en veiligere manier mogelijk.

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


Verwijderd

Ik zat gewoon fout, soz

Verwijderd

Topicstarter
Op dinsdag 16 juli 2002 16:49 schreef Crayne het volgende:
Hij wil waarschijnlijk een generieke .asp pagina maken waar elk willekeurige form naar toe kan linken. Deze ASP pagina verwerkt dan automatisch alle velden, onafhankelijk van hoe ze genoemd zijn of hoeveel het er zijn.

Komt dat in de buurt, pbirkoff?
Dit is inderdaad wat ik wil. (sorry voor late reply)

Verwijderd

Topicstarter
Op woensdag 17 juli 2002 11:55 schreef TlighT het volgende:
code:
1
2
3
4
5
6
7
<%
Dim sVar 
sVar = "fiets"

Execute "Dim " & sVar & ": " & sVar & "=""test"""
Response.Write fiets
%>

Kan dus wel.
Mijn dank is groot, precies wat ik bedoel.

Bestaat er eigenlijk een 'www.php.net' voor asp? ik kom soms dingen tegen als execute (thanx TlighT), dictionary, XMLHTTP.. Enorm veel mogelijkheden, maar lastig als je ze niet weet..

Verwijderd

Op donderdag 18 juli 2002 01:25 schreef pbirkoff het volgende:

[..]

Dit is inderdaad wat ik wil. (sorry voor late reply)
Mijn vraag blijft: wat wil je dan doen met de waarden die je gesubmit krijgt?

Zoals gorgi_19 al aangaf kun je met een For Each loop door alle opgestuurde waarden van het form heen lopen, zodat je er alles mee kan doen en laten wat je wil.

Nadeel is dat lege velden niet gesubmit worden, en omdat je niet weet vanaf welk formulier een submit is gedaan weet je niet welke waarden aanwezig zouden moeten zijn maar er niet zijn.

HTH :)

edit:

http://msdn.microsoft.com is de algemene Microsoft ontwikkelsite, http://msdn.microsoft.com/library/ bevat informatie over alle technieken, en http://msdn.microsoft.com/asp/ is een shortcut naar ASP gerelateerde zaken.

Verder kun je op sites zoals http://www.aspin.com/ en http://www.w3schools.com/asp/ tutorials, voorbeelden en meer vinden. Er staan vast nog meer sites in de FAQ (bovenaan pagina)

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

gorgi_19

Kruimeltjes zijn weer op :9

Op donderdag 18 juli 2002 01:30 schreef MrX het volgende:

Nadeel is dat lege velden niet gesubmit worden, en omdat je niet weet vanaf welk formulier een submit is gedaan weet je niet welke waarden aanwezig zouden moeten zijn maar er niet zijn.

HTH :)
De 'afzender' is eventueel nog te achterhalen door een hidden tag mee te sturen in een form, in de trant van :
code:
1
<input type=hidden name=TheFormName Value="<%= Request.ServerVariables("Script_Name")">

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
Op donderdag 18 juli 2002 01:30 schreef MrX het volgende:

[..]

Mijn vraag blijft: wat wil je dan doen met de waarden die je gesubmit krijgt?

Zoals gorgi_19 al aangaf kun je met een For Each loop door alle opgestuurde waarden van het form heen lopen, zodat je er alles mee kan doen en laten wat je wil.

Nadeel is dat lege velden niet gesubmit worden, en omdat je niet weet vanaf welk formulier een submit is gedaan weet je niet welke waarden aanwezig zouden moeten zijn maar er niet zijn.

HTH :)
Dat met lege velden, dat is inderdaad nog lastig, maar dat is wel op te lossen door de GET-method te gebruiken ofzo.

De reden dat ik dit wil gebruiken, deels al aangegeven in mijn tweede of derde post, is wat je krijgt als iemand een veld WEL in vult, en een NIET. Het moet dus onthouden worden.

Wat ik dus wil, is dat na een submit, een variabele aangemaakt wordt met de naam van het veld, zodat deze later (indien er iets verkeerd is ingevuld, en er iets onthouden moet worden), zo wordt weergegeven:
code:
1
<input type="text" name="fiets" value="<%=fiets%>">

Het ligt dus nog een stukje dieper dan enkel alle waarden van het formulier krijgen.

Ik weet het, het is misschien wat banaal, en misschien incorrect, maar (nu ik weet dat het kan) het werkt wel.

Verwijderd

Op donderdag 18 juli 2002 01:33 schreef gorgi_19 het volgende:

[..]

De 'afzender' is eventueel nog te achterhalen door een hidden tag mee te sturen in een form, in de trant van :
code:
1
<input type=hidden name=TheFormName Value="<%= Request.ServerVariables("Script_Name")">
Absoluut waar, was ik vergeten. Als je altijd met ieder form een input type="hidden" tag maakt waarin je alle verplichte veldnamen meestuurt en die een vaste naam geeft, kan je wel verplichte velden afvangen, en evt. terugsturen naar de formulier pagina om verbeteringen aan te brengen.

Verwijderd

Topicstarter
Op donderdag 18 juli 2002 01:38 schreef MrX het volgende:

[..]

Absoluut waar, was ik vergeten. Als je altijd met ieder form een input type="hidden" tag maakt waarin je alle verplichte veldnamen meestuurt en die een vaste naam geeft, kan je wel verplichte velden afvangen, en evt. terugsturen naar de formulier pagina om verbeteringen aan te brengen.
Dit was dus inderdaad precies wat ik ook als idee had. iets als: input type="hidden" name="requered" value="..." en dan zorgt het script er automatisch voor dat deze waarde gecontroleerd worden. Weer een probleem (jaja, we blijven bezig :P) hiermee is dat bijv. checkboxes weer extra lastig zijn.

Verwijderd

Topicstarter
Op donderdag 18 juli 2002 01:43 schreef pbirkoff het volgende:

[..]

Dit was dus inderdaad precies wat ik ook als idee had. iets als: input type="hidden" name="requered" value="..." en dan zorgt het script er automatisch voor dat deze waarde gecontroleerd worden. Weer een probleem (jaja, we blijven bezig :P) hiermee is dat bijv. checkboxes weer extra lastig zijn.
Edit: thanx voor de links btw. Ken ze, maar ik zal MSDN eens wat vaker bezoeken :P
Edit2: Oeps, verkeerde knop :( nu staat er een nieuw bericht

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

gorgi_19

Kruimeltjes zijn weer op :9

Op donderdag 18 juli 2002 01:37 schreef pbirkoff het volgende:

[..]

De reden dat ik dit wil gebruiken, deels al aangegeven in mijn tweede of derde post, is wat je krijgt als iemand een veld WEL in vult, en een NIET. Het moet dus onthouden worden.

Wat ik dus wil, is dat na een submit, een variabele aangemaakt wordt met de naam van het veld, zodat deze later (indien er iets verkeerd is ingevuld, en er iets onthouden moet worden), zo wordt weergegeven:
code:
1
<input type="text" name="fiets" value="<%=fiets%>">

Het ligt dus nog een stukje dieper dan enkel alle waarden van het formulier krijgen.

Ik weet het, het is misschien wat banaal, en misschien incorrect, maar (nu ik weet dat het kan) het werkt wel.
Nu we toch bezig zijn met brainstormen, als we het principe van posten naar een 'ander' bestand eens vergeten en naar zichzelf laten posten.

De input boxen zijn dan af te vangen met
code:
1
<input type="text" name="fiets" value="<%= Request.Form("fiets") %>">

Probleem 2 is opgelost.

Nu probleem 1: Een aparte form. Maak hier anders een includebestand van, wat de checks uitvoert.
Include.asp:
code:
1
2
3
4
5
6
7
8
9
10
11
Dim blnCorrect = true
For each Item in Request.Form
    If Request.Form(Item) = "" Then
      blnCorrect = False
    End if
Next

If blnCorrect = true then
    actie
    Server.Execute Request.Form("TargetName")
End if

Mailform.asp:
code:
1
2
3
Include include.asp 'ff syntax vergeten, sorry!
HTMLCode
<input type=hidden name=targetname value=targetfile.asp>

Is trouwens allemaal pseudocode, maar je krijgt het idee wel. Op deze manier heb je toch een algemene form met controle.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Je moet wel bedenken dat generieke stukken code mooi zijn, maar niet zo mooi als je je in bochten moet wringen om het werkend te krijgen.

Ik zie overigens niet in waarom checkboxen moeilijker zijn dan gewoon text boxen. Als een checkbox niet aangevinkt is, staat die ook niet in de Request.Form collectie, anders wel.

Ik geef zelf de voorkeur aan een formulier dat naar zichzelf submit, zodat zowel het formulier, foutafhandeling m.b.t. verplichte velden, verwerking en resultaat in 1 overzichtelijk stuk staan.

Succes :)

Verwijderd

Topicstarter
Op donderdag 18 juli 2002 01:48 schreef gorgi_19 het volgende:

[..]

Nu we toch bezig zijn met brainstormen, als we het principe van posten naar een 'ander' bestand eens vergeten en naar zichzelf laten posten.

De input boxen zijn dan af te vangen met
code:
1
<input type="text" name="fiets" value="<%= Request.Form("fiets") %>">

Probleem 2 is opgelost.
OMG!!!!| :(|:(|:(
Ik voel me zo'n rund!!! Dit is gewoon wat ik moet hebben!! GRRR, dat het leven soms zo makkelijk kan zijn...

<knip goede code>

Duizend maal dank gorgi!

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 09:31

Crazy D

I think we should take a look.

Op donderdag 18 juli 2002 01:48 schreef gorgi_19 het volgende:
Nu probleem 1: Een aparte form. Maak hier anders een includebestand van, wat de checks uitvoert.
Include.asp:
[code]Dim blnCorrect = true
For each Item in Request.Form
If Request.Form(Item) = "" Then
blnCorrect = False
End if
Next
Een veld wat niet gevuld is krijg je niet "door". Als je die als Request.Form("veld") opvraagt, krijg je een lege string terug, maar dat komt omdat dat item niet bestaat (in php zou je daar isset() voor gebruiken). Dus dat geintje gaat niet helemaal op ;)
En een algemene formhandler die alleen checkt of iets gevuld is of niet, is imho nou ook weer niet echt supernuttig ;) Dus zul je iets moeten verzinnen waarmee je kunt aangeven of iets een verplicht veld is of niet, eventueel een datatype, etc. En aangezien je dat ook zult moeten onthouden, is een dictionary nog niet zo'n gek idee ;) En in je formhandler loop je dan gewoon alle items van de dictionary door, en kijkt of die in de Request.Form collectie zit. En in je code spreek je de boel aan als dictionaryobject("veld").

Exact expert nodig?


Verwijderd

Topicstarter
Op donderdag 18 juli 2002 02:00 schreef Crazy_D het volgende:

[..]

Een veld wat niet gevuld is krijg je niet "door". Als je die als Request.Form("veld") opvraagt, krijg je een lege string terug, maar dat komt omdat dat item niet bestaat (in php zou je daar isset() voor gebruiken). Dus dat geintje gaat niet helemaal op ;)
En een algemene formhandler die alleen checkt of iets gevuld is of niet, is imho nou ook weer niet echt supernuttig ;) Dus zul je iets moeten verzinnen waarmee je kunt aangeven of iets een verplicht veld is of niet, eventueel een datatype, etc. En aangezien je dat ook zult moeten onthouden, is een dictionary nog niet zo'n gek idee ;) En in je formhandler loop je dan gewoon alle items van de dictionary door, en kijkt of die in de Request.Form collectie zit. En in je code spreek je de boel aan als dictionaryobject("veld").
Klinkt erg mooi dit, en zal vast werken..
maar zoals ik eerder zei, een hidden input met alle vereiste velden werkt volgens mij ook prima..!

Verwijderd

Op donderdag 18 juli 2002 01:54 schreef pbirkoff het volgende:

[..]

OMG!!!!| :(|:(|:(
Ik voel me zo'n rund!!! Dit is gewoon wat ik moet hebben!! GRRR, dat het leven soms zo makkelijk kan zijn...

<knip goede code>

Duizend maal dank gorgi!
/me kan een hartelijke lach niet onderdrukken.
Zo zie je maar weer hoe sommige ingewikkeld lijkende problemen helemaal geen probleem zijn, maar meer een miscommunicatie. ;)

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

gorgi_19

Kruimeltjes zijn weer op :9

Op donderdag 18 juli 2002 02:00 schreef Crazy_D het volgende:

[..]

Een veld wat niet gevuld is krijg je niet "door".
Darn, ff helemaal vergeten |:( , maar je hebt gelijk!

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
Ik heb snel een simpele versie gemaakt voor wie geinteresseerd is. Het geneuzel met checkboxes enzo heb ik even achterwege gelaten.

Demonstratie
Broncode

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 09:31

Crazy D

I think we should take a look.

Op donderdag 18 juli 2002 02:03 schreef pbirkoff het volgende:
Klinkt erg mooi dit, en zal vast werken..
maar zoals ik eerder zei, een hidden input met alle vereiste velden werkt volgens mij ook prima..!
Dan laat je de verwerking van de data afhangen van de data die je binnen krijgt, en zoals wel vaker gezegt, vertrouw nooit de input. Dan is het imho niet zo heel slim om bij de client vandaan door te krijgen welke velden er verplicht zijn... Dan kun je net zo goed heel de inputvalidatie laten hangen.
En nogmaals, wat is het nut van een algemene formhandler als deze alleen kan kijken of een veld gevuld is of niet. Het klote-werk zit 'm nou juist in het controleren of een veld niet alleen gevuld is, maar ook of de waarde geldig is. Dus kom je imho al gauw bij een systeem uit waarbij je op z'n minst basis-validatie hebt, wel of niet gevuld, numeriek of niet, geldig email adres, dat soort dingen. Maar goed, geen runtime errors dus let's ship it ;)

Exact expert nodig?


Verwijderd

Topicstarter
Op donderdag 18 juli 2002 10:53 schreef Crazy_D het volgende:

[..]

Dan laat je de verwerking van de data afhangen van de data die je binnen krijgt, en zoals wel vaker gezegt, vertrouw nooit de input. Dan is het imho niet zo heel slim om bij de client vandaan door te krijgen welke velden er verplicht zijn... Dan kun je net zo goed heel de inputvalidatie laten hangen.
En nogmaals, wat is het nut van een algemene formhandler als deze alleen kan kijken of een veld gevuld is of niet. Het klote-werk zit 'm nou juist in het controleren of een veld niet alleen gevuld is, maar ook of de waarde geldig is. Dus kom je imho al gauw bij een systeem uit waarbij je op z'n minst basis-validatie hebt, wel of niet gevuld, numeriek of niet, geldig email adres, dat soort dingen. Maar goed, geen runtime errors dus let's ship it ;)
Nou, de reden dat ik zoiets maak is eigenlijk heel simpel: ik moet voor mijn werk regelmatig formulieren maken, en het is een tering werk om elke keer een validatie-scriptje te schrijven. Heel simpel: om te controleren of de velden zijn ingevuld. (Het script is ook eigenlijk heel simpel, had het moeilijker verwacht).

Maar je hebt gelijk dat bij validatie ook de geldigheid van de waardes gecheckt moeten worden. Email adressen, tel-nummers, postcodes, maar ook bijv. als er een selectie uit meerdere checkboxes gedaan moet worden. Dan heb je echt een algemene formHandler.

Alleen zie ik persoonlijk zo'n hiddenfield als goede oplossing, want ik wil eigenlijk zo weinig mogelijk in het script zelf te hoeven veranderen elke keer.

  • Crazy D
  • Registratie: Augustus 2000
  • Laatst online: 09:31

Crazy D

I think we should take a look.

Op donderdag 18 juli 2002 12:34 schreef pbirkoff het volgende:
Nou, de reden dat ik zoiets maak is eigenlijk heel simpel: ik moet voor mijn werk regelmatig formulieren maken, en het is een tering werk om elke keer een validatie-scriptje te schrijven. Heel simpel: om te controleren of de velden zijn ingevuld.
Hehe je zo'n vermoeden had ik al... ;)
Maar maak 'm dan meteen goed, en verzin er iets omheen dat waardes ook gevalideert worden, en als je het ruig wilt doen 8-) meteen een stukje code die de form-velden aanmaakt, en ook meteen wat javascript validatie erbij gooit ;)
Alleen zie ik persoonlijk zo'n hiddenfield als goede oplossing, want ik wil eigenlijk zo weinig mogelijk in het script zelf te hoeven veranderen elke keer.
Dat snap ik, programeurs zijn luie wezens (typo's komen dan ook niet vanwege gebrek aan spellings-kennis, maar gewoon omdat je dan minder letters hoeft te typen, of je hand minder ver te verplaatsen :P) ;)
Alleen zie ik dan nog steeds het nut hier niet zo heel erg van in. Je moet nog steeds zelf de form maken, na de basic validatie eventueel nog verder valideren, en zo niet, je moet iig iets met de ingevoerde waardes doen, dus je typt je nog steeds de pokke. Begin dan bijvoorbeeld door, als het toch ff simpel en makkelijk moet blijven, een array te gebruiken om daar de verplichte velden in te zetten, ipv een hidden veld. Of je nou de verplichte velden in een hidden veld in de html-form zet, of in een array, dat scheelt niks qua typewerk. Maar is het iig weer een klein beetje betrouwbaarder (herhalingsmodus: vertrouw nooit de ontvangen data, ook niet uit hidden velden).

Exact expert nodig?

Pagina: 1