Autor | Zpráva | ||
---|---|---|---|
vlczak Profil * |
#1 · Zasláno: 27. 9. 2005, 13:24:59
Mám JavaScript zaheslování přístupu na stránky. Problém je v tom, že po vyplnění hesla a stisknutí enteru se pole smaže. Jde mi o to, abych nemusel najíždět na tlačítko Odeslat.. Nevíte někdo, jak na to?
|
||
WertriK Profil * |
#2 · Zasláno: 28. 9. 2005, 00:52:38
Podle me to tak normale nedela (ze ti to vymaze pole) prave naopak normalne kdyz das enter tak se ti to odesle (tak jak chces). Proto bych hledal chybu nekde v kodu u tebe.Treba nastaveni action bo tak neco.
Jinak zaheslovani pomoci JS ?!? Takove zaheslovani jsem uz nekde na strance nasel, no cca 1 minutka a heslo jsem znal. Pres JS to opravdu neni bezpecne. Uz jen jednoduche PHP "nejde" prekonat : <? if ($heslo == "tajneHESLO") { header ("Location: tajnastranka.htm"); } else { echo "Spatne heslo"; } ?> |
||
vlczak Profil * |
#3 · Zasláno: 28. 9. 2005, 01:04:51
Mno, celej script +/- vypadá takhle.. za pass 0-5 jsou ještě kódy, ale to už není podstatný. Nepotřebuju to mít stopro nedostupný, páč na těch stránkách toho zrovna moc zajímavýho taky není, ale soukromí se má střežit, tak střežím.. Stačí, aby to ze zdrojáku nerozluštili "obyčejný" uživatelé netu..
<script> var pass=new Array() var t3="" var lim=5 pass[0]=" " pass[1]=" " pass[2]=" " pass[3]=" " pass[4]=" " pass[5]=" " //configure extension to reflect the extension type of the target web page (ie: .htm or .html) var extension=".html" var enablelocking=0 var numletter="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVW XYZ" var temp3='' var cur=0 function max(which){ return (pass[Math.ceil(which)+(3&15)].substring(0,1)) } function testit(input){ temp=numletter.indexOf(input) var temp2=temp^parseInt(pass[phase1-1+(1|3)].substring(0,2)) temp2=numletter.substring(temp2,temp2+1) return (temp2) } function submitentry(){ t3='' verification=document.password1.password2.value phase1=Math.ceil(Math.random())-6+(2<<2) var indicate=true for (i=(1&2);i<window.max(Math.LOG10E);i++) t3+=testit(verification.charAt(i)) for (i=(1&2);i<lim;i++){ if (t3.charAt(i)!=pass[phase1+Math.round(Math.sin(Math.PI/2)-1)].charAt(i )) indicate=false } if (verification.length!=window.max(Math.LOG10E)) indicate=false if (indicate) window.location=verification+extension else alert("Invalid password. Please try again") } </script> |
||
WertriK Profil * |
#4 · Zasláno: 28. 9. 2005, 01:16:14
Ehm, jsem se spatne vyjadril v JS chyba del meho nazoru nebude(doufam, ja totiz JS moc neumim) ale videl bych to na chybu ve folmulari, treba pokud mas policku a nemas u nej <form> tak se ti obsah smazne. Proto bych to udelal takto :
<form onSubmit="return login();return false;"> // nejsem si jit tim return false <input type="password"> <input type="submit"> </form> ta funkce login(); by obsahovala ten tvuj kod a podle rozhodnuti (heslo je spravne nebo spatne) bych pomoc window.location.href presmeroval uzivatele tak kam potrebuji nezapomen ze tam nekdo musi byt to return false aby se ti ten formular neodeslal |
||
Fred Profil |
#5 · Zasláno: 28. 9. 2005, 09:13:00
Asi tak. Pokud je focus uvnitř formuláře a ve formuláři je input typu submit posílá se enterem automaticky.
|
||
vlczak Profil * |
#6 · Zasláno: 28. 9. 2005, 11:57:26
Tak jsem místo "button" vložil "submit" a už to běhá.. teď ještě udělat, aby mi hned po načtení stránky ve formu blikal kurzor..
<input type="button" value="Odeslat" onClick="submitentry()"> |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0