Pagina 1 din 1

Setare si preluare Cookie in JavaScript

Scris: Vin Dec 26, 2014
de Ashu
Salut...am o problema in legatura cu cookie-urile..
Am urmatorul cod JS:

Cod: Selectaţi tot

function setcookie() {
	var l_user = document.f_chat.us_chat.value;
	var l_pass = document.f_chat.ps_chat.value;

	var twoDays = 1*24*60*60*1000
    var expDate = new Date()
    expDate.setTime(expDate.getTime()+twoDays);

    document.cookie = "userls" + "=" + escape(l_user) + "; expires=" + expDate.toGMTString() ;
    document.cookie = "passls" + "=" + escape(l_pass) + "; expires=" + expDate.toGMTString() ;
}

function checkCookie(c_name) {
    if (document.cookie.length>0) {
      c_start=document.cookie.indexOf(c_name + "=");
      if (c_start!=-1) { 
        c_start=c_start + c_name.length+1; 
        c_end=document.cookie.indexOf(";",c_start);
        if (c_end==-1) {
          c_end=document.cookie.length;
        }
        return unescape(document.cookie.substring(c_start,c_end));
      } 
    }
  // Daca user-ul verificat nu exista
    return "Acest user nu exista!";
  }

   function getCookie() {
    nr = getCookie.arguments.length

    var val_c = new Array(nr)
    var a = 0

    for (var i=0; i<nr; i++) {
      valoare=checkCookie(getCookie.arguments[i]);
      if (valoare!=null && valoare!="") {
        val_c[a] = valoare;
        a++
      }
    }

  	var no = new Array(2)
    no[0] = val_c[0];
    no[1] = val_c[1];
    document.write(no[0] + no[1]);
  }
Cand se executa functia "setcookie()" apoi "getCookie()" in loc sa-mi apara valorile lui val_c[0] si val_c[1] imi apare NaN...vreo rezolvare?Nu gasesc unde am gresit..

Setare si preluare Cookie in JavaScript

Scris: Vin Dec 26, 2014
de MarPlo
Salut
Functia getCookie() trebuie apelata cu numele cookie-urilor pe care le vrei (unul, sau mai multe ca argumente separate prin virgula).
Exemplu:

Cod: Selectaţi tot

<script>
// codul de mai sus cu functiile pt. cookie ...

setcookie();
getCookie('userls', 'passls');
</script>

Setare si preluare Cookie in JavaScript

Scris: Sâm Dec 27, 2014
de Ashu
Acum imi returneaza mesajul care trebuie returnat in cazul in care cookie-urile nu exista.
Butonul care apeleaza functia setcookie() (care seteaza cookie-urile) arata asa:

Cod: Selectaţi tot

<input type="button" value="Click me" onclick="setcookie()">

Setare si preluare Cookie in JavaScript

Scris: Sâm Dec 27, 2014
de MarPlo
Atunci inseamna ca nu e salvat cookie cu numele pe care il specifici la apelare getCookie('nume').
Poate ca valorile pe care vrei sa le adaugi in cookie nu sunt preluate cum trebuie.
Poti sa verifici daca e ceva salvat in cookie folosind:

Cod: Selectaţi tot

alert(document.cookie);
- Daca nu te descurci cu cookie, o alta modalitate de a salva si folosi date in browser cu javascript e metoda localStorage(); e mai simplu.

Cod: Selectaţi tot

// Salveaza date in browser
localStorage.setItem('nume', 'valoare');

// Preia valoarea salvata
var val = localStorage.getItem('nume');
alert('val');
Gagesti documentatie si exemple la adresa:
w3schools.com/html/html5_webstorage.asp

Setare si preluare Cookie in JavaScript

Scris: Dum Dec 28, 2014
de Ashu
Cu localStorage(); nu reusesc sa accesez valorile dupa ce dau refresh la pagina.
Dar totusi mi se par mai folositoare cookie-urile,chiar daca sunt mai greu de folosit.Imi poti spune unde e gresit in codul de mai jos?E cel HTML cat si cel Javascript.
HTML:

Cod: Selectaţi tot

<html>
<head> 
	<title>Chat-room</title>
	<script type="text/javascript" src="js/general.js"></script>
	<link rel="stylesheet" type="text/css" href="css/style.css">
</head>
<body>
	<div id="container">
	<form name="f_chat">
		<input type="text" id="us_chat" name="us_chat" placeholder="User">
		<input type="text" id="ps_chat" name="ps_chat" placeholder="Password">
		<input type="button" id="lg_chat" name="lg_chat" value="Log in" onclick="getCookie('userls', 'passls');">
		<input type="button" value="Click me" onclick="setCookie()">
	<form>
 </body>
 </html>
Javascript:

Cod: Selectaţi tot

function setCookie() {
	var l_user = document.f_chat.us_chat.value;
	var l_pass = document.f_chat.ps_chat.value;

	var twoDays = 2*24*60*60*1000
    var expDate = new Date()
    expDate.setTime(expDate.getTime()+twoDays);

    document.cookie = "userls" + "=" + escape(l_user) + "; expires=" + expDate.toGMTString() ;
    document.cookie = "passls" + "=" + escape(l_pass) + "; expires=" + expDate.toGMTString() ;
}



function checkCookie(c_name) {
    if (document.cookie.length>0) {
      c_start=document.cookie.indexOf(c_name + "=");
      if (c_start!=-1) { 
        c_start=c_start + c_name.length+1; 
        c_end=document.cookie.indexOf(";",c_start);
        if (c_end==-1) {
          c_end=document.cookie.length;
        }
        return unescape(document.cookie.substring(c_start,c_end));
      } 
    }
  // Daca user-ul verificat nu exista
    return "Acest user nu exista!";
  }

   function getCookie() {
    nr = getCookie.arguments.length

    var val_c = new Array(nr)
    var a = 0

    for (var i=0; i<nr; i++) {
      valoare=checkCookie(getCookie.arguments[i]);
      if (valoare!=null && valoare!="") {
        val_c[a] = valoare;
        a++
      }
    }

  // Afiseaza in pagina, la id-urile indicate, valorile cookie-urilor
  	var no = new Array(2)
    no[0] = val_c[0];
    no[1] = val_c[1];
    document.write(no[0] + no[1]);
  }
Multumesc mult!Sper sa nu fiu prea stresant..

Setare si preluare Cookie in JavaScript

Scris: Dum Dec 28, 2014
de MarPlo
Nu vad nimic gresit. Dupa cu se completeaza cu text cele doua casete de text si se apasa pe "Click me", datele completate sunt salvate in cookie.
Dupa aia, la apasare pe "Log in" apar datele adaugate in cele 2 casete text.
Incearca in setcookie(), in loc de:

Cod: Selectaţi tot

var l_user = document.f_chat.us_chat.value;
var l_pass = document.f_chat.ps_chat.value;
Pune asa:

Cod: Selectaţi tot

var l_user = document.getElementById('us_chat').value;
var l_pass = document.getElementById('ps_chat').value;
Daca la tine nu functioneaza asa, nu stiu de ce.

Setare si preluare Cookie in JavaScript

Scris: Dum Dec 28, 2014
de Ashu
Defapt treaba e alta,care ma si amuza. Cand ti-am folosit exemplul din tutorialul cu cookie, era aceasi problema. Pentru ca exista deja un cookie cu acel nume, de aceea returneaza mesajul care trebuie returnat in cazul in care cookie-urile nu exista. Am folosit alt browser, Mozilla Firefox, si a mers.
Multumesc mult pentru ajutorul!
Si mai am o intrebare,tutorialele javascript de pe site sunt complete?Adica te invata tot despre javascript?

Edit: Defapt dupa ce am sters cookie-urile,intampin aceasi problema.Dar cu mozilla merge.

Setare si preluare Cookie in JavaScript

Scris: Dum Dec 28, 2014
de MarPlo
Tutorialele de pe site nu sunt chiar pentru un studiu complet. Au vreo 3 ani vechime si de atunci au aparut elemente noi, si nu ma ocup sa tin pasul cu ele fiindca nu se mai termina niciodata.
Lectiile de pe acest site sunt pentru incepatori ca sa ajunga la un nivel mediu de cunoastere. Dar se gasesc destule resurse pe internet ca sa inveti, tutoriale, carti in format pdf; doar sa cauti.