Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   cookie почему не работает скрипт (https://javascript.ru/forum/misc/41108-cookie-pochemu-ne-rabotaet-skript.html)

Alven 31.08.2013 19:35

cookie почему не работает скрипт
 
Подскажите, пожалуйста, почему не работает данный скрипт:

<script language="javascript1.2"><!--

//функция присвоить cookie по имени name значение value
//аргументы:name, value, срок действия в миллисекундах
function setcookie(name,value,expire){
var exp=new Date();
var cookieexpire=exp.getTime()+expire;
exp.setTime(cookieexpire);
document.cookie=name+"="+value+";expires="+exp.toG MTString();
}

//функция возвращает значение для cookie по имени name
function getcookie(Name){
var search=Name+"=";
if(document.cookie.length>0){ //если cookie существует
offset=document.cookie.indexOf(search)
if(offset!=-1){ //если существует cookie по имени name
offset+=search.length //начало нужного cookie
end=document.cookie.indexOf(";",offset) //конец нужного cookie
if(end==-1){end=document.cookie.length}
return unescape(document.cookie.substring(offset, end))
}
}
}
--></script>


<input type="text" name="usernametext">
<input type="submit" name="Submit" value="Submit" onClick="submit();">

<script language="javascript1.2"><!--

function submit(){
setcookie("user",document.all.usernametext.value,3 65*24*3600*1000);
location.reload();}


var username;
username=getcookie("user");
document.write("welcome "+username);
--></script>

Взят с этого сайта: http://htmljava.narod.ru/files/htmlmeth/cookiuse.htm

lamer 01.09.2013 03:17

Alven, обычно тут люди очень быстро помогают, словом, делом.
Как считаешь почему не кто до сих пор не ответил ?
Ответ прост, оформляй код в теги, чтоб люди не ломали глаза.

А по теме, я из твоего примера мало что понял что тебе нужно, набрасал несколько функций, покликай, может подойдут.

<html>

<head>
</head>

<body>
<input type="text" name="usernametext">
<input type="button" value="setCookie" onclick="goCookie();">
</br>
</br>
<input type="button" value="deleteCookie" onclick="delCookie();">
</br>
</br>
<input type="button" value="checkCookie" onclick="checkCookie();">

<script>
// возвращает cookie если есть или undefined
function getCookie(name) {
	var matches = document.cookie.match(new RegExp(
	  "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
	))
	return matches ? decodeURIComponent(matches[1]) : undefined 
}

// уcтанавливает cookie
function setCookie(name, value, props) {
	props = props || {}
	var exp = props.expires
	if (typeof exp == "number" && exp) {
		var d = new Date()
		d.setTime(d.getTime() + exp*1000)
		exp = props.expires = d
	}
	if(exp && exp.toUTCString) { props.expires = exp.toUTCString() }

	value = encodeURIComponent(value)
	var updatedCookie = name + "=" + value
	for(var propName in props){
		updatedCookie += "; " + propName
		var propValue = props[propName]
		if(propValue !== true){ updatedCookie += "=" + propValue }
	}
	document.cookie = updatedCookie

}

// удаляет cookie
function deleteCookie(name) {
	setCookie(name, null, { expires: -1 })
}

var nameCookie = 'user';

// функция устанавливает cookie со значением которое написанно в инпуте
function goCookie() {
	var valueCookie = document.getElementsByName('usernametext')[0].value;
	setCookie(nameCookie, valueCookie, 24 * 60 * 60 * 1000);
	alert('Welcome ' + getCookie(nameCookie));
}

// функция удаляет cookie
function delCookie() {
	deleteCookie(nameCookie);
	alert('Delete cookie: ' + nameCookie);
}

// функция проверяет существует ли cookie с заданным именем
function checkCookie() {
	if (getCookie(nameCookie)) {
		alert('Cookie ' + nameCookie + ' exists');
	} else {
		alert('Cookie ' + nameCookie + ' does not exist');
	}
}
</script>
</body>

</html>


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