← Uz sākumu

Autocomplete

2005. gada 14. jūnijā, 42 komentāri

Teju visi pārlūki piedāvā makten ērtu iespēju, kura saucās “auto complete form fields”. Tas nozīmē, ka, ja Tu kādā lapā esi aizpildījis kādu lauku, tad nākamajā reizē, kad Tu ieradīsies tajā lapā un mēģināsi aizpildīt to pašu lauku, pārlūks piedāvās arīdzan izvēlēties no jau iepriekš ievadītajām vērtībām.

Šoreiz nerunāsim par to, ka dažiem šī “fīča” šķiet ērta, bet citiem pilnīgi nevajadzīga. Šoreiz minēšu, kā apiet kādu sliktu blakusefektu.

Ja datoru ar vienu un to pašu lietotāju lieto vairāki cilvēki (teiksim, Interneta kafejnīcās), tad šī iespēja kļūst par potenciālu drošības un privātuma caurumu. Visi var redzēt (pie nosacījuma, ka iespēja pārlūkā nav atslēgta) to, ko citi ir vadījuši iekšā, teiksim, kā saņēmēja e-pasta adresi webmailā.

Viens risinājums (kuru saprot kā IE, tā Mozilla) ir pievienot attiecīgajiem laukiem autocomplete="off". Bet tas nav valīdi. Protams, ja validitāte ir pie kājas, tad var iztikt. Bet ja nav?

Var to visu darīt ar JavaScript, kurš šo atribūtu pievieno elementam dinamiski, zimantojot DOM. Tas būs valīdi.

Bet, man, savukārt, ir vēlme tomēr darbā, kur es viens pats izmantoju savu datoru, šo “autocomplete” iespēju izmantot.

Tā kā lielākoties izmantoju šo iespēju lapās, kurās esmu autorizēts lietotājs, tad atrisināt problēmu var ar vienkāršu, bet efektīvu metodi. Nosaukt ievades laukus nevis, teiksim, phone, bet gan phone_1234, kur 1234 ir kāds katram lietotājam unikāla simbolu virkne.

Protams, šāds paņēmiens mazliet sarežģī datu apstrādi, bet ieguvums ir visnotaļ būtisks.

Nu, un protams, preferencēs ieliekam ķekškastītes izskata opciju - izmantot automātisko formu lauku aizpildes padomdevēju <g>, kura, kad ieķeksēta, aktivizēs uz katru lapas ielādi iepriekšminēto javaskriptu.

Tu atbildi augstāk redzamajam komentāram. Atcelt

Gravatar jam

2005. gada 14. jūnijā, plkst. 13:33

Kāds var pateikt, nakuj tā validitāte vajadzīga, piem. kādai firmeles lapai a?

Gravatar laacz

2005. gada 14. jūnijā, plkst. 13:37

jam: Validācija ir veids, kā pārbaudīt, vai Tavā dokumentā nav sintakses kļūdas un vai tas atbilst specifikācijām. Un neviens Tev nespiež visu darīt pareizi (galu galā, nejau tādiem, kas nesaprot, ir domātas specenes). Dari pa savam. Specifikācijas un rekomendācijas ir standartizācijas mēģinājums. Sekmīgs. Un tas, ka Tu to nesaproti, nenozīmē, ka tas nav pareizi. Man, personīgi, ir prieks par labi padarītu darbu, kurš izskatās labi ne tikai no ārpuses, bet arī no iekšpuses. Un standartizācija šajā pasākumā palīdz, nevis traucē.

Gravatar jam

2005. gada 14. jūnijā, plkst. 14:06

nu jā, standarti, standarti, bet html ir un paliek html arī bez standartiem :) Iekšpuse, kods interesē visus citus, izņemot mērķauditoriju lapai, ja vien tas nav alistapart :)

Gravatar efix

2005. gada 14. jūnijā, plkst. 14:06

laacz ir ircotaajs :D

<g> = grin = smile: a facial expression characterized by turning up the corners of the mouth; usually shows pleasure or amusement

imho ;)

Gravatar laacz

2005. gada 14. jūnijā, plkst. 14:10

jam: Nodali divas lietas. Izstrādi un uzturēšanas ērtumu (un prieku no tā) un izskatu/funkcionalitāti. Protams, ka vidusmēra lapas apmeklētāju neinteresē, vai lapa ir taisīta ar (X)HTML un CSS, izmantojot visprogresīvākās tehnoloģijas, vai oldskūlā, kamēr tas netraucēs viņa //browsing experience//. Un, kā jau varēji noprast, ja Tu meklē motivāciju, kāpēc būt jāraksta iekš XHTML/CSS un citādi visādi modernos veidos, tad Tu vēl neesi gatavs to darīt.

Gravatar cu

2005. gada 14. jūnijā, plkst. 14:22

Bet tomēr, webmail gadījumā šāds piegājiens neder - pieslēdzoties jau vēl nezinām to lietotāja identifikatoru.

Gravatar laacz

2005. gada 14. jūnijā, plkst. 14:24

cu: Pieslēgšanās gadījumā var darīt tāpat būtībā :)

<input type="hidden" name="uniqid" value="1234" /> <input type="text" name="user_1234" value="" /> ...

Bet nu šis jau attiecas uz autoentifikācijas tipa informācijas (paroļu un lietotāja vārdu) saglabāšanu, nevis autokomplītu.

Gravatar karlis

2005. gada 14. jūnijā, plkst. 14:40

efix: grin = smīns != smaids...

Gravatar jam

2005. gada 14. jūnijā, plkst. 14:43

laa, es tagad izmantoju tikai css layoutam un stiliem :)) vot (x)html gan vēl jātrennējas.

Gravatar efix

2005. gada 14. jūnijā, plkst. 15:01

karlis: google -> define:grin

:)

Gravatar Qued

2005. gada 14. jūnijā, plkst. 15:26

Nav jau uzreiz jāmetas uz XHTMLu. Var sākt ar korekta HTMLa ievadi, piemēram,

<td width="300"> nevis <td width=300>; noslēgt to, kas jānoslēdz - piemēram, <option>kakis</option> nevis <option>kakis

Gravatar juriic

2005. gada 14. jūnijā, plkst. 15:29

nu jau esi paarcenties :D

Gravatar duksis

2005. gada 14. jūnijā, plkst. 15:32

jaa nu loginiem shis nederees

Gravatar Qued

2005. gada 14. jūnijā, plkst. 16:03

duksis par ko ne? Loginam var ģenerēt kaut kādu dinamisku lauka nosaukumu. Galvenais to nosaukumu padot tālāk (caur sesiju vai kaut vai caur hidden parametriem) logina apstrādes skriptam.

Gravatar rudzis

2005. gada 14. jūnijā, plkst. 16:59

I-bankas lieto to unikālo ID pie input'a "name" (vismaz Parex). Ja man reiz būtu tāda vajadzība, es to veidotu tieši tā.

Gravatar rem

2005. gada 14. jūnijā, plkst. 17:19

nu šeit aprakstītais variants nav problēmas risināšana, bet gan cīnīšanās ar simptomiem. user_1234 izmantošana kā lauka vārds tak neatrisina pieminētās privātuma problēmas. ja iespēja browserī ir ieslēgta, tad tas arī tiks saglabāts, vienīgi "parasts" lietotājs to nepamanīs, bet jebkurš pietiekami advancēts lietotājs to varēs bez problēmām apskatīties. bet lietotājiem šādi tiek radīts false sense of security, kas principā ir slikti :)

Gravatar Esh

2005. gada 14. jūnijā, plkst. 17:58

Nu ir jau pavisam nesmukais veids pēc tam, teiksim, ar PHP rupji iet cauri $_POST masīvam ar foreach un tad jau diezgan pie kājas, kā kurš lauks saucas. galvenais, ka secība un skaits nemainās.

Gravatar Papuass

2005. gada 14. jūnijā, plkst. 20:18

//Var to visu darīt ar JavaScript, kurš šo atribūtu pievieno elementam dinamiski, zimantojot DOM. Tas būs valīdi.//

Nu nez, tas ir tāpat kā priecāties par risinājumu, kur tabulas satur kopā dizainu, bet sourcē nerādās, jo ģenerējās ar Javascript. Tā jau tikai validatora šmaukšana, nevis reāla validitāte.

Gravatar lauris reiniks

2005. gada 14. jūnijā, plkst. 23:49

Nu bet sekojot 1. komentaaram un 2. komentaaram (laacz) atbildei.

Nav runa par to vai es maku to vai nemaku un vai es gribu zinat standartu vai negribu, bet runa ir par to, nahuj kaadai firmelei, kura turaas uz punkjiem ir vajadziigs, lai lapa valideetos? Ko tas viniem dod? Neko. Vieniigi tas izmaksaatu daargaak

Gravatar kewl

2005. gada 15. jūnijā, plkst. 07:47

Lauri Reinik, pamosties. Ilgtermiņā tas izmaksā stipri lētāk.

Gravatar ulzha

2005. gada 15. jūnijā, plkst. 09:09

Ļauži, validitāte nav priekš sevis, validitāte ir priekš citiem! Lai tava publicējamā informācija jebkuram interesentam tagadnē un nākotnē būtu pieejama bez raizēm par taviem ad hoc risinājumiem! Skaidrs.

rem - taisnība gan.

Gravatar docent

2005. gada 15. jūnijā, plkst. 09:47

#22: kādā ilgtermiņā? "Firmelei, kas turās uz puņķiem" un tās vietnei ar 5ām statiskām HTML lapām?

Gravatar čačeris

2005. gada 15. jūnijā, plkst. 10:09

Nu bet, cik tad izmaksā valīds html firmelei ar 5 lapām. Tas maksā tikpat cik parasts. Ja tu raksti html tad kas tur ko atcerēties, ka jāraksta <table border="1"> nevis <table border=1>.

Gravatar bljaaviens

2005. gada 15. jūnijā, plkst. 11:07

brrr, man vienalga nepielec, kaa phone_1234 metode atrisina e-cafe problemu

Gravatar ulzha

2005. gada 15. jūnijā, plkst. 11:52

Neatrisina, jau nolēmām

Gravatar kliedziens

2005. gada 15. jūnijā, plkst. 11:53

Nu tā, ka nākamais, kas sēdīsies pie kompīša un vērs to pašu lapu dabūs citu phone_1235, un neredzēs kāds jūzers pirms tam bijis.

Gravatar Qued

2005. gada 15. jūnijā, plkst. 12:25

lauri reinik imho, lapa, kuras markups neatbilst standartiem, ir brāķis. Ja tu prasi naudu par brāķi, tu esi vienkārši naglijs žuļiks - viens no tiem ībļiem, kas ar sava slinkuma/stulbuma pēc čakarē visu Latvijas interneta padarīšanu. Labi, es saprotu, ja skolnieks savas nezināšanas pēc uztaisa līku lapu, bet, ja to dara "zinošs izstrādātājs", tad tas ir apkaunojoši.

Gravatar japets

2005. gada 15. jūnijā, plkst. 12:51

Qued, žuļiks ir tas, kurš aizbildinoties ar standartiem veido lapu, kuru nevar pilnvērtīgi aplūkot vairumā no lietotajiem browseriem. IMO, vispirms jāuztaisa lietojams produkts, pēc tam var domāt par krutuma audzēšanu...

Gravatar laacz

2005. gada 15. jūnijā, plkst. 13:00

japets: Viens (oldskul HTML un tabulu leijautu piekritējs) ir cilvēks, kurš nevēlas un, kas svarīgi, nespēj iemācīties neko jaunu. Otrs (žuļiks) ir tas, kurš nedara to, ko no viņa gaida. Un tas nav saistīts ar to, ka cilvēks kaut ko taisa pa jaunam, vai vecam. Un nejau krutuma audzēšanā ir tā sāls, bet gan prasmē iet uz priekšu un darīt to pašu darbu, izmantojot visā pasaulē pieņemtas tehnoloģijas un pārlūku //jaunās// iespējas, paliekot uzticīgs projekta specifiskajām prasībām. Slinkums un mazspēja ir iemesls tam, ka cilvēki paliek pie vienkāršiem un netīriem veidiem, kā padarīt darbu. Standartizācija un CSS/XHTML/u.c. nav krāniņa stiepšanai un locīšanai. Problēma ir iekš tā, ka cilvēki ir slinki un dirš pa labi un pa kreisi. Izmantojot XCSS/XHTML Tu vari veidot lapas tā, ka tās ir apskatāmas visur un labi degradējas arī uz nespējīgiem/specifiskiem/veciem pārlūkiem.

Gravatar Qued

2005. gada 15. jūnijā, plkst. 13:01

Tu tā kā izdari mājienu, ka, ievērojot standartus, rodas grūtības izveidot lietojamu, vairumā pārlūku aplūkojamu lapu? Man šķiet, šeit jau netiek apspriesta indivīda kompetence, bet gan izlaidība.

Gravatar es

2005. gada 15. jūnijā, plkst. 14:10

Interesantaka ir cita stelle - hren ar to, ka tur to padarisanu organizet, bet ka var izdzest kadu noteiktu vertibu ara no pieejamajam? nu teiksim, ieks lmt lapas sutot iszinas, ir dazreiz iebakstijusies dala no tel numura vai ari kadi burti... un tagad, kad saku rakstit numuru, tiek piedavata visa ta draza ari - ka varetu izdzest tikai kadu noteiktu ierakstu, bet ne visu. Visam ir skaidrs - clear forms un gatavs... Kads zin?

Gravatar laacz

2005. gada 15. jūnijā, plkst. 14:12

es: Atkarīgs no pārlūka.

Gravatar es

2005. gada 15. jūnijā, plkst. 14:20

nu ok - teiksim IE. kur vins to drazu glaba?

Gravatar elfz

2005. gada 15. jūnijā, plkst. 14:53

es: (ie6) tools - internet options - content - autocomplete; pogas "clear forms" un "clear passwords". Priekš individuālas menedžošanas vari lietot mazu PCMagazine tuļķi AutoWhat - http://www.janthomas.nl/DLtips2/autowhat.zip

Gravatar bubu

2005. gada 15. jūnijā, plkst. 16:21

ar bultiņu uzbrauc uz nevajadzūigā ieraksta un nospied shift+del

Gravatar elfz

2005. gada 15. jūnijā, plkst. 16:35

bubu - brīnišķi. nezināju ;)

Gravatar č

2005. gada 15. jūnijā, plkst. 18:11

Iekš IE iet tas del, bet FF ņefiga - tas vienīgais,kas man FF netīk :)

Gravatar Mole

2005. gada 28. jūlijā, plkst. 12:53

ari FF tas der - [shift]+[del]