Nehodilo by se i obecné validační pravidlo, kde jen zadám v parametru regulární výraz? Nebo je raději vynecháno, aby si člověk psal jednoduché validační funkce a nesvádělo ho to k hůře čitelným regulárům?
Názory k článku
Nette Framework: Neprůstřelné formuláře
Re: Validace dle regexp
celé vláknoValidace na bázi regulárních výrazů je možná, viz třeba http://forum.nettephp.com/…rms-podminky?…
validace skupin
celé vláknoV odkazovanem foru, ktere je zavreno si lide stezuji na nemoznost validace urcitych bloku – po odeslani jednim tlacitkem chci validovat, druhym nechci. Tohle ma docela dobre vyreseno Prado, ma tzv. validacni skupiny, takze muzu rict, ze tri inputy a jedno tlacitko jsou v jedne skupine a dalsi v druhe. Pak v zavislosti na odeslani formu danym tlacitkem se provede validace jen nad temi prvky co jsou s nim ve skupine.
Btw, jak se projevi odeslani formulare Entrem? pak tam neni zadny cudlik, kterym byl form odeslan.
Po sté to samé?
celé vlákno$form->addRadioList(‚gender‘, ‚Pohlaví:‘, $sex);
$form->addText(‚email‘, ‚E-mail:‘);
$form->addCheckbox(‚promo‘, ‚zasílejte mi reklamu‘);
…
Já nevím … když pominu to, že to je ikstá varianta toho, co se dá už léta splašit třeba na phpclasses.org i jinde, mi uniká smysl toho, abych pokaždé dynamicky vytvářel formulář, který pak vždy vypadá stejně. Jako utilita pro tvorbu HTML šablon formulářů to je dobré. Ale do aplikace … Co třeba metody pro vytváření dynamických seznamů nebo check boxů, načítajích data z databáze, jsou?
Re: Po sté to samé?
celé vláknoTak šup, alespoň jeden odkaz na phpclasses.org s komponentou, která umí totéž a disponuje stejnými bezpečnostními prvky. Těším se.
Re: Po sté to samé?
celé vláknoStejně by se dalo říct, že na HotScripts.com nebo kdekoliv jinde jich je spousta ale většina je buď hodně mizerná nebo je jejich použití všelijaké. Valná většina navíc postrádá alespoň základní dokumentaci.
David: Asi by se tam dalo něco podobného najít. Já jsem to vzdal po 8 pokusech a napsal si vlastní. Manuel tam sice má třídu, která vypadá kompletní ale nevyznám se v tom množství souborů a neměl jsem náladu studovat použití, takže těžko říct.
Re: Re: Po sté to samé?
celé vláknoAno, Lemosovy třídy, dále Clonefish a samozřejmě Zend_Form. Form helpery jsou v podstatě v každém frameworku.
Re: Re: Re: Po sté to samé?
celé vláknoTak třeba Zend_Form mimo jiné nedisponuje:
- validací UTF-8 řetězců (zásadní nedostatek)
- odstraňováním kontrolních znaků (nepříjemnost)
- nemá podporu pro podmíněné validační pravidla (zásadní nedostatek)
- a generování validace na straně JavaScriptu (nebo alespoň neměl v době, kdy jsem se na něj díval)
- nezná „empty values“
- nekontroluje povolený obsah selectů
- vznikl o dva roky později než Nette Forms (aneb pláčete na špatném hrobě)
Díváte se na celou věc pouze povrchně (což prosím neberte jako invektivu!), proto soudíte, že jde o další variaci na totéž. Nejde. Na první pohled to tak může vypadat, ale uvnitř zeje kvalitativní propast.
Re: Re: Re: Re: Po sté to samé?
celé vláknoTýjo, komentáře tu statečně požírají veškeré pokusy o formátování. Nejde to Texy nějak vypnout? ;)
Re: Re: Re: Re: Re: Po sté to samé?
celé vláknoDoporučuji kontaktovat naše vývojové oddělení. Oon ten celý nový systém je pořád takový neodladěný polotvat 8-(
Re: Re: Re: Re: Po sté to samé?
celé vláknoAle já tady neřeším, kdo z vás ho má většího na základě
množství kódu a co kdo napsal dříve … pouze jsem vyjádřil své lehké
znechucení nad tím, že dynamicky generujete vždy stejný obsah – na to
můžete namítnout, že formuláře se nezobrazují tisíckrát za sekundu a
proto je cache zbytečná … nechápu, proč to odvádíte jinam.
Druhý problém mám s tím, že takto máte konfiguraci UI zadrátovanou do
kódu – pokud by si zákazník chtěl změnit popisek pole, musí do
PHP kódu.
Re: Re: Re: Re: Re: Po sté to samé?
celé vláknoReagoval jsem na větu „když pominu to, že to je ikstá varianta toho, co se dá už léta splašit třeba na phpclasses.org i jinde“. Neodvádím to jinam, jen reaguji postupně.
K tomu generování stejného obsahu: Mícháte hrušky s baňama. Nikde jsem přece „nenamítal, že cache je zbytečná“. Naopak, Nette Framework disponuje velmi silným aparátem pro kešování. A když mám aparát, nebojím se ho použít ;)
Ad popisky: to je dobrá připomínka, proto popisky takto uvedené v kódu jsou volitelné. Pro jednoduché weby je pragmatické uvést je přímo v kódu. Pro složitější weby je lze nastavovat mimo ve zvláštní rutině. A nakonec pro multijazyčné weby lze použít místo popisek konstanty, které se poté překladačem automaticky nahradí za skutečné popisky v daném jazyce.
Re: Po sté to samé?
celé vláknoJak jste, 'sim Vás, přišel k té přezdívce? :-) Jistě, na phpclasses.org a desítkách dalších zdrojů seženete takových rutin tuny. Nějakou tu „vodotoňákfunguje“ třídu pro formuláře si navíc zbastlí každý začínající programátor. Ovšem kvalitně naprogramovat a zakomponovat do frameworku už tak snadné není.
„Co třeba metody pro vytváření dynamických seznamů nebo check boxů, načítajích data z databáze, jsou?“ – a co třeba si takovou specifickou záležitost naprogramovat sám? Nette tomu nijak nebrání… Pokud ovšem nejste ten typ programátora, který celou aplikaci poslepuje z torz z phpclasses.org apod.
Re: Re: Po sté to samé?
celé vláknoAd 1) Narážky ad hominem ve stylu „jé, ty máš blbej nick“ nemám
rád
Ad 2) Ano, to se samozřejmě napsat dá. Ale proč v Nette? :-)
Ad 3) Já cizí kód používám, nevidím důvod, proč bych měl třeba HTML
Purifier psát znovu jen proto, abych světu dokázal, že jsem těžkej borec a
všechno přede mnou bylo blbě … a je mi úplně jedno, jestli ho najdu
v PEARu, na hotscripts nebo jinde, rozhodující je licence, jednoduchost,
konsistence a celková úspora času.
newbie
celé vláknoJa tedy v php neprogramuji, tak je muj dotaz asi dost nejapny, ale …
neni to trosku luxus generovat vsechno dynamicky pres php, bez spetky hotoveho HTML? napr. napr jinak staticke formulare, veskere tagy sablonach a pod.
Re: newbie
celé vláknoI tohle je možné, záleží na potřebách nebo „lenosti“ programátora. Dostanu s k tomu v dalším pokračování.
Re: Nette Framework: Neprůstřelné formuláře
celé vláknoProstě a jednoduše super, jestli ne celé Nette a strukturu kterou nabízí, tak minimálně Forms použiju určitě. Díky za ty dary.
Re: Re: Nette Framework: Neprůstřelné formuláře
celé vláknoJen ještě rychlý dotaz – to je ok, že emailová kontrola schválí adresu jako „lang@glavew.orks.czz“? Ještě bych chápal tu tečku uprostřed, ale .czz? Jdou ty pravidla nějak editovat?
Re: Re: Re: Nette Framework: Neprůstřelné formuláře
celé vláknoTLD nejsou nijak předem definovány ⇒ proč ne?
Re: Re: Re: Re: Nette Framework: Neprůstřelné formuláře
celé vláknoAha, ok, diky
Re: Validace e-mailu
celé vláknoPravda je ale taková, že kontrola e-mailové adresy v Nette je velmi
benevolentní. Povolí třeba i nevalidní adresu .@;.aa.