Kas turi slaptažodžius
Parašė WyPuk 2009 balandžio 6 13:04:38
Tiesiog įvedę duomenis jūs pamatysite kas turi slaptažodžius.

[code]<html>
<head>
<script language="javascript">
var vardai= new Array (10) //Globalus vardų masyvas
var n= 0; //Masyve saugomų reikšmių skaičius
//Masyvo formavimo iš teksto eilutėje įrašytų vardų funkcija
function Atskirti(x) {
n= 0; //Pradinė masyvo indekso reikšmė
var b= 0, e; //Vardo pradžios ir pabaigos indeksai
while (x != ""){ //Vardų atskyrimo pabaigos sąlyga
e= x.indexOf('='); //Vardo pabaiga
vardai[n]= x.substring(b,e); //Vardo rašymas į masyvą
n++; //Įrašytų vardų skaičiavimas
e= x.indexOf(';')+1; //Slaptažodžio pabaigos indeksas
if (e>0) //Ar dar yra eilutėje kabliataškių
x= x.substring(e, x.lenght); //Išanalizuoto įrašo atmetimas
else x="";

}
}

//Loginė teksto laukelių užpildymo kontrolės funkcija
function Gerai(x, y) {
if ((x != "") &&(y != ""))
return true;
else return false;
}

//Iš vardo [b]x[/b] ir slaptažodžio y sudaryto įrašo rašymas į slapuką
function Put(x, y) {
dabar= new Date(); //Esama data
nauja = new Date(); //Objektas datai po metų

nauja.setTime (dabar.getTime() + (365 * 24 * 60 * 60 * 1000));
//Slapuko papildymas įrašu
document.cookie= x +"="+ y +"; expires= nauja.toGMTString()";
Forma.vardas.value= ""; //Teksto laukelių išvalymas
Forma.slapt.value= "";
Forma.vardas.focus() //Teksto laukelių suaktyvinimas
}
//Slapuke įrašytų vardų parodymas pranešimų lange
function get() {
var t = document.cookie; //Visas slapuko tekstas
Atskirti(t); //Slapuko teksto perdavimas funkcijai Atskirti
t="Slaptažodžius turi: \n""; //Pranešimo teksto pirmoji eilutė
for(i=0; i<n; i++) //Vardų masyvo indeksų perrinkimas
t+= vardai[i]+'\n'; //Vardų sąrašo sudarymas
alert(t); //Pranešimo lango atvėrimas
}
//Įrašytų vardų X pašalinimas iš slapuko
function del (x){
sena= new Date(200,01,01); //Praėjusio laikotarpio data
//Įrašo vardu x perrašymas
document.cookie = x +"= ; expires="+ sena.toGMTString();
}
//Slaptažodžio y pakartojimo užklausa
function Kartoti(y){
t=prompt ("Pakartoti slaptažodį" ,"");
if (t == y) //Ar sutampa pirmoji ir pakartota reikšmės
return true;
else{
Forma.slapt.value= "";
return false;

}
}

//Įrašo rašymo į slapuką sąlygų kontrolės funkcija
function Saugoti(x, y) {
if(Gerai(x, y)&&Kartoti(y)) //Ar teisingai įvesti duomenys
Put(x ,y); //Rašymas į slapuką
else{
alert('Įvedimo klaida, kartokite); // Įspėjimas apie klaidą

}

}

</script></head>
<body>
<form name= "Forma">
<p><p>Įveskite vardus ir slaptažodžius</b></p>
Vardas: <input name="vardas" type=text">
Slaptažodis: <input name="slapt" type=password><br><br>
<input name="mygtukas" type=button value="Rašyti"
onClick="Saugoti(form.vardas.value, form.slapt.value)" >
<input name="mygtukas" type=button value=Skaityti" onClick="get()" >
<input name="mygtukas" type=button value="Naikinti"
onClick="del(form.vardas.value)" >
</form>
</body></html>[/code]

Tinklapio aprašyme naudojamų funkcijų sudarymo principus ir jų paskirtis paaiškina jų tekste įterpti komentarai. Atskiriant iš slapuke saugomo teksto įrašų vardus, atsižvelgiama į tai, kad šiame tekste juos riboja simboliai [b]";" ir "=".[/b] Atskirti vardai iš pradžių įrašomi į vardų masyvą, kuris vėliau naudojamas pranešimo lange rodomam tekstui sudaryti.

[b]*[/b] Patikrinkite, kaip aprašytame tinklalapyje vykdomi slaptažodžių rašymo į slapuką, vardų peržiūros ir slaptažodžių įrašų pašalinimo veiksmai.

[b]*[/b] Pakeiskite vardų masyvo formavimo funkciją [b]Atskirti[/b] taip, kad į vardų masyvą būtų įrašomi ir vėliau parodomi pranešimo lange ne tiktai vardai, bet ir šiems vardams paskirti slaptažodžiai

[b][color=red]Rašė: WyPuk[/color][/b]