Difference between revisions of "Tokens en Formulieren"
m (Woeps, dit is een Engelstalige wiki) |
(Verklaar de naamgeving van form-elementen) |
||
Line 1: | Line 1: | ||
Een formulier wil je over het algemeen niet twee keer insturen. Daarom maakt WhosWho4 gebruik van Tokens. Elk formulier heeft een <code>hidden</code> veld genaamd <code>token</code>, waar een unieke waarde in staat. Als twee keer dezelfde waarde langskomt, is een formulier dus dubbel ingestuurd. De methode <code>Token::processNamedForm()</code> zoekt uit of de tokens kloppen, en returnt de naam van het formulier (die van <code>HtmlForm::named()</code>) als alles ok is, en toont een "Dit formulier is al gesubmit, heb je op f5 gedrukt?"-error als het mis is. | Een formulier wil je over het algemeen niet twee keer insturen. Daarom maakt WhosWho4 gebruik van Tokens. Elk formulier heeft een <code>hidden</code> veld genaamd <code>token</code>, waar een unieke waarde in staat. Als twee keer dezelfde waarde langskomt, is een formulier dus dubbel ingestuurd. De methode <code>Token::processNamedForm()</code> zoekt uit of de tokens kloppen, en returnt de naam van het formulier (die van <code>HtmlForm::named()</code>) als alles ok is, en toont een "Dit formulier is al gesubmit, heb je op f5 gedrukt?"-error als het mis is. | ||
+ | |||
+ | Een veld heeft over het algemeen een name-attribuut van de vorm 'DBObject[Veld]' zoals 'Lid[Voornaam]'. Let dus op dat het niet 'Persoon[Voornaam]' is, zelfs al is Voornaam een veld van de Persoon-klasse. Omdat zulke rechte haakjes niet in een css/js-selector passen, worden in de id's van bijvoorbeeld de formPersoonVerzameling, alle niet-alfanumerieke karakters eruit gemangeld. De resulterende selector is bijvoorbeeld '#VeldDropDown_DBObjectVeld' of '#PersoonVerzamelingZoekVak_IntroClusterPersoon'. | ||
[[Category:WebCie]] | [[Category:WebCie]] |
Latest revision as of 15:04, 8 July 2016
Een formulier wil je over het algemeen niet twee keer insturen. Daarom maakt WhosWho4 gebruik van Tokens. Elk formulier heeft een hidden
veld genaamd token
, waar een unieke waarde in staat. Als twee keer dezelfde waarde langskomt, is een formulier dus dubbel ingestuurd. De methode Token::processNamedForm()
zoekt uit of de tokens kloppen, en returnt de naam van het formulier (die van HtmlForm::named()
) als alles ok is, en toont een "Dit formulier is al gesubmit, heb je op f5 gedrukt?"-error als het mis is.
Een veld heeft over het algemeen een name-attribuut van de vorm 'DBObject[Veld]' zoals 'Lid[Voornaam]'. Let dus op dat het niet 'Persoon[Voornaam]' is, zelfs al is Voornaam een veld van de Persoon-klasse. Omdat zulke rechte haakjes niet in een css/js-selector passen, worden in de id's van bijvoorbeeld de formPersoonVerzameling, alle niet-alfanumerieke karakters eruit gemangeld. De resulterende selector is bijvoorbeeld '#VeldDropDown_DBObjectVeld' of '#PersoonVerzamelingZoekVak_IntroClusterPersoon'.