formulář a trim() položek

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vk83
Člen | 22
+
0
-

Nejprve mě trochu zmátlo, že u položek formuláře je nastavený trim() a myslím, že minimálně pro addPassword je tohle nevhodné.
Šlo by tedy přidat nějaké nastavení, aby se tomu trimování zabránilo?
A nebylo by i dobré doplnit do popisu funkce, že je to trimováno?

despiq
Člen | 320
+
0
-

proc je to pro addpassword nevhodne, copak je normalni pouzivat v heslu mezery pred nebo za pismeny?

Mikulas Dite
Člen | 756
+
0
-

U hesla mě to nikdy nenapadlo. Jestli se to vážně děje, jsem taky pro nastavovací metodu. Ale možná ještě lepší by bylo nějak umožnit vypsat chybu: tzn třeba nedovolit uživateli vytvořit heslo „pavel " a varovat ho. Jenom pokračovat s inputem "pavel“, když je to heslo je hodně divoký. A tim sem to vlastně vyřešil – uživateli to může být úplně jedno: registruje si heslo „pavel ", to se uloží třeba jako sha1("pavel“), ale to stejné se stane i když se zaloguje. Budou mu tedy fungovat hesla dvě, „pavel " i "pavel“.

despiq
Člen | 320
+
0
-

s tim dost nesouhlasim, dovolit nekomu udelat si heslo s mezero je velika ale opravdu velika chyba,ktera rozumna stranka vam dnes dovoli si takove heslo udelat? a o ukladani hesla se nette vubec nestara a uz vubec ne formulare, rekl bych ze je vetsi pravdepodobnost ze clovek zmackne mezernik omylem nez naschval, taky pak saskovat s tim jestli si pavel dal heslo pavel s deseti mezerama by bylo silne na hlavu

vk83
Člen | 22
+
0
-

Tak mě to přijde nevhodné, protože pak se pracuje s jiným řetězcem než který byl zadán.
Sice pak stále pracujeme s pavlem bez mezer a tak navenek se rozdíl nepozná a pro naši aplikaci je pavel s mezerami stejný jako bez nich.
A to je zrovna u hesla myslím chyba, aby platilo, že sha1(“pavel") == sha1(“pavel „) == sha1(“ pavel“).

Jinak když uživatel chce mít v heslu mezery, tak proč mu v tom bránit?

Editoval vk83 (25. 4. 2010 22:31)

Mikulas Dite
Člen | 756
+
0
-

Oba trvdíme to stejné: bylo by fajn mít možnost se o trim postarat někde stranou, třeba tím mít možnost ho vypnout.

Přidal jsem k tomu navíc to, že i když by nějaký uživatel zatím měl heslo s mezerou na začátku nebo na konci, bude mu úplně stejně fungovat i heslo bez těch mezer. Jejich počet je úplně nepodstatný. Tohle je trošku nebezpečné chování, pokuď heslo není omezené na délku (resp. doufám, že trim je úplně první věc co formy dělají), jinak by se k účtu co má heslo jenom složené z mezer mohlo přihlásit i úplně bez hesla. Ale neřekl bych, že omezovat uživatele v tom, co si dá za heslo je správné (kromě minimální délky), maximálně bych mu dal varování, když tam tu mezeru má, nebo něco na ten způsob.

Honza Marek
Člen | 1664
+
0
-

Důvod, kvůli kterému se v nette v heslu mezery ořezávaj je ten, že při kopírování hesla z e-mailu si člověk snadno mezeru přenese omylem. Tomu je oříznutím zabráněno.

Honza Kuchař
Člen | 1662
+
0
-

Tady se ten filter registruje. A vymazáním pole $filters ho zrušíte. Tedy společně i s oříznutím maximální délky vstupu.