addressalign-toparrow-leftarrow-leftarrow-right-10x10arrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscontroller-playcredit-cardcrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobe--smallglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1languagelaunch-new-window--smalllight-bulblightning-boltlinklocation-pinlockm-swarmSearchmailmediummessagesminusmobilemoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonprintShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstar-shapestartickettrashtriangle-downtriangle-uptwitteruserwarningyahooyoutube

Re: [php-360] Validering...

From: Troels K.
Sent on: Wednesday, June 10, 2009, 12:19 PM
I min erfaring, er "validering" en ret diffus st?rrelse. Det kan
derfor v?re sv?rt at isolere det til et konkret komponent, eller s?gar
til et bestemt lag af en applikation.

Hvis du kan slippe afsted med det, er det som regel bedre at skubbe
det ned i moddellaget, men du rammer en gr?zone n?r du begynder at
skulle h?ndtere ting, der er meget kontekst-specifikt. For eksempel,
er det ret almindligt at man har forskellig logik baseret p? den
aktuelle bruger. Det betyder at hvis du smider al logik i modellaget,
s? skal modellaget v?re bevidst om bruger begrebet - noget der nok
ellers mest er et pr?sentationslags-ko­ncept. Der er ikke n?dvendigvis
et klar svar p? hvad der er smartest at g?re i s?dan en situation, men
pointen er at validering n?ppe kan reduceres til at h?re til enten i
controllere eller i modeller. En l?sning kan v?re at introducere
strategi-objekter[1]­[2]; Alts? objekter, der ikke repr?senterer
konkrete entiteter, men som snarere repr?senterer adf?rd. Du kan s?
koble de relevante stretegier sammen med entiteterne efter behov.

[1] https://en.wikiped...­
[2] https://c2.com/cgi...­

--
troels

2009/6/9 Niels <[address removed]>:
>
> Tuesday 09 June 2009 skrev Jette Derriche:
>> Jeg har pr?vet forskellige ting, men er ikke sikker p? jeg har fundet
>> nogen optimale l?sninger.
>>
>> Validering af brugerindtastede data, hvor placerer I det?
>>
>> 1)
>> En valideringsklasse der kan validere alle de typer input som
>> applikationen modtager.
>>
>> 2)
>> En valideringsklasse med validering af dato, tid o.lign. og validering
>> af mere specifikke ting i de klasser hvor de h?rer til.
>>
>> 3)
>> Validering sker slet ikke i klasserne, det sker i controllerne.
>>
>> 4)
>> ...?
>>
>> /Jette
>
> Mit eget framework er ikke et MVC-framework, men til geng?ld kalder det
> specifikt funktionen postGemValider (hvis den findes). Den ser strukturelt
> nogenlunde s?ledes ud:
>
> function postGemValider($post­) {
>
> ? ? ? ?//dato
> ? ? ? ?if (!val::erDato($post[­'dato'])) {
> ? ? ? ? ? ? ? ?return 'blabla';
> ? ? ? ?}
>
> ? ? ? ?//flere felter
>
> ? ? ? ?//OK
> ? ? ? ?return '';
>
> }
>
>
> og s? en generel klasse der bruges overalt:
>
> class val {
>
> ? ? ? ?function erDato($str) {
> ? ? ? ? ? ? ? ?return whatever;
> ? ? ? ?}
>
> ? ? ? ?function erInt
> ? ? ? ?function erTom
> ? ? ? ?osv.
> }
>
>
>
> Ikke s? meget hj?lp i det, blot min m?de at g?re det p?.
>
>
> Venligst,
> Niels
>
>
>
>
> --
> Please Note: If you hit "REPLY", your message will be sent to everyone on this mailing list ([address removed])
> https://www.meetup...­
> This message was sent by Niels ([address removed]) from The Copenhagen PHP Meetup Group.
> To learn more about Niels, visit his/her member profile: https://www.meetup...­
> To unsubscribe or to update your mailing list settings, click here: https://www.meetup...­
> Meetup Support: [address removed]
> 632 Broadway, New York, NY 10012 USA
>
>

People in this
group are also in: