Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   установка и считывание cookie (https://javascript.ru/forum/misc/45075-ustanovka-i-schityvanie-cookie.html)

EvgShaman 13.02.2014 14:44

установка и считывание cookie
 
Начал изучать javascript 4 дня назад, решил попробовать установку и считывание cookie, нашёл в интернете функции для этого
function setCookie(c_name,value,expiredays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate()+expiredays);
document.cookie=c_name+ "=" +escape(value)+
((expiredays==null) ? "" : ";expires="+exdate.toUTCString());
}

function getCookie(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));
    }
  }
return "no!";
}

Но ничего не работает. Пробовал и другие функции с разных форумов и всегда результат один.
Вызываю функции просто так:
function up()
{
str=1;;
alert(str);
setCookie('str',str);
alert(getCookie('str'));
}

Последний alert всегда выводит "no!"
Подскажите, пожалуйста, в чём может быть проблема!(

skrudjmakdak 13.02.2014 15:50

здесь читали?
http://learn.javascript.ru/cookie

ruslan_mart 13.02.2014 16:12

function cookie(a, b) {
	if(b) document.cookie = a+'='+escape(b)+'; expires = Mon, 01-Jan-2999 00:00:00 GMT; path=/';
	var c = '(?:; )?'+a+'=([^;]*);?', d = new RegExp(c);
	return d.test(document.cookie) ? decodeURIComponent(RegExp['$1']) : null;
}

cookie('test', 'Hello World!'); //Установка
cookie('test'); //Получение

danik.js 13.02.2014 16:13

EvgShaman, а чем localStorage не устраивает?


localStorage.setItem('str', 1);

alert(localStorage.getItem('str'));

skrudjmakdak 13.02.2014 16:15

Ruslan_xDD, а че не в одну строчку :)

ruslan_mart 13.02.2014 16:18

skrudjmakdak, да очень давно под себя писал, сейчас лень переписывать всё, чтобы код понятнее был. :)

EvgShaman 13.02.2014 17:34

Цитата:

Сообщение от danik.js (Сообщение 297479)
EvgShaman, а чем localStorage не устраивает?


localStorage.setItem('str', 1);

alert(localStorage.getItem('str'));

=_= не знал про него :(
Целый день парился с cookie, с localStorage всё работает..)
Спасибо! Проблема решена) :)
Тему можно закрывать..)

danik.js 13.02.2014 21:30

Все-таки localStorage и куки - разные вещи. Кроме того, localStorage не поддерживается в совсем древних браузерах.
А еще есть sessionStorage - хранит данные втечение сессии (до закрытия вкладки).


Часовой пояс GMT +3, время: 12:37.