|
|
|
| подскажите, можно ли при помощи JS принимать и сохранять значения в куках на поддоменах?
вот допустим использую на домене www.domen.ru
document.cookie = "bookmarks_" + btype + obj.value + "=" + obj.value + "; expires=" + cookieExpires + "; path=/";
всё работает, но когда я нахожуть тут sub.dome.ru
то почемуто значения сохранёные на www.domen.ru не видно на sub.dome.ru
как можно сдёлать чтобы они они были видны и на поддоменах?
в PHP это делается так .domen.ru
в начале точка и за ней название домена
а как на SJ сделать непойму, подскажите плиз. | |
|
|
|
|
|
|
|
для: Terri
(06.09.2007 в 12:30)
| | На поддоменах куки работатют. Единственная проблема, которая может быть, это та, что устанавливать куки для поддомена нужно отдельно. Всё-таки это другой хост, можно сказать... | |
|
|
|
|
|
|
|
для: coloboc66
(06.09.2007 в 13:31)
| | жаль, на PHP это работает
а можно тогда чтобы куки работали только на третьем уровне, только имена третьего уровня будет разный, тоесть так:
auto.domen.ru
travel.domen.ru
допустим сохранил я на auto.domen.ru и они были видны на travel.domen.ru
такое возможно? | |
|
|
|
|
|
|
|
для: Terri
(06.09.2007 в 13:40)
| | Это зависит от броузера. Не буду утверждать, но думаю,что невозможно. Может, я ошибаюсь... | |
|
|
|
|
|
|
|
для: coloboc66
(06.09.2007 в 13:31)
| | вот тут например видно, сохранёные букмарики на
http://rabota.slando.spb.ru/spb/1382_1.html
учитываются и тут
http://auto.slando.spb.ru/spb/203_1.html
тоесть на странице по авто сохранил в избраное, и на странице по работе они видны, тоесть пишет что Избранное (14 ) | |
|
|
|
|
|
|
|
для: Terri
(06.09.2007 в 13:47)
| | Сделайте куки на ява-скрипт и посмотрите, что получится. | |
|
|
|
|
|
|
|
для: coloboc66
(06.09.2007 в 14:08)
| | извиняюсь, а как это можно сделать?
у меня вроде и так на ява скрипте сделано, но работает только на домене | |
|
|
|
|
|
|
|
для: Terri
(07.09.2007 в 05:26)
| | --- | |
|
|
|
|
|
|
|
для: Terri
(07.09.2007 в 05:26)
| | Информация в Cookie задается принципом ИМЯ=ЗНАЧЕНИЕ. В одном документе может содержаться несколько Cookies (не больше 20). Минимальное описание поля Cookie выглядит так:
Set-Cookie: NAME=VALUE;
Максимальное выглядит так:
Set-Cookie: NAME=VALUE; expires=DATE; path=PATH; domain=DOMAIN_NAME; secure
NAME=VALUE - NAME - Имя Cookie, VALUE - Значение. Можно менять как NAME, так и VALUE. Используются любые символы, кроме символа переноса строки, двоеточия, запятой и пробела.
Пример: Имя=Вася
expires=DATE - Дата окончания действия Cookie. Менять только DATE. Вид такой: "expires=День, Число-Ден-ГГГГ ЧЧ:ММ:СС GMT". Если expires не обозначен, Cookie хранится до закрытия окна броузера.
Пример: expires=Fri, 14-Sep-2005 13:13:13 GMT
domain=DOMAIN_NAME - домен на котором действителен Cookie. Вид такой: "domain=domain.com". Cookie будет действителен как для www.domain.com, так и для myname.domain.com. В зоне RU и других локальных зонах не работает. Используется только для COM, EDU, NET, ORG, GOV, MIL и INT. Если domain не обозначен, используется доменное имя сервера с Cookie.
Пример1: domain=mamapapa.com
Пример2: domain=gazzzeta.da.ru
path=PATH - Указывает имена докментов, для которых действительно значение Cookie. Вид такой: "path=/word". Cookie будет отсылаться в директориях /word, /word2000 и файлов в текущей директории с именами word.htm, wordchampion.html. Для применения Cookie ко всему серверу указывается корневой каталог сервера /. Если path не указан, Cookie распространяется только на текущую директорию.
Пример1: path=/gazzzeta
Пример2: path=/
secure - Если указан, при передаче Cookie используется HTTPS (HTTP с SSL - Secure Socket Level). Если secure не указан, Cookie передается HTTP.
Если Cookie использует одинаковое значение NAME, domain и path - старое значение заменяется новым.
Вставка Cookie в HTML.
Вставить Cookie можно несколькими способами. Самые простой - это через META-тег. Альтернативным способом является Javascript и всевозможные другие технологии (CGI, PHP, SSI и т.д.).
Использование Cookie через META-тег.
Между тегов <HEAD> и </HEAD> Cookie вписывается так:
<META HTTP-EQUIV="Set-Cookie" CONTENT="NAME=VALUE; expires=DATE; domain=DOMAIN_NAME; path=PATH; secure">
Можно использовать несколь META-тегов с Cookie в одном документе.
Пример: <META HTTP-EQUIV="Set-Cookie" CONTENT="Имя=Вася; expires=Fri, 14-Sep-2005 13:13:13 GMT; path=/; domain=provider.com; secure">
Использование Cookie через Javascript.
<script language="JavaScript">
<!--
var username = GetCookie('username');
if (username == null) {
username = prompt(' Пожалуйста, введите Ваше им\я\n (в противном случае нажмите cancel)',"");
if (username == null) {
alert('Ну хорошо, тогда я буду звать Вас ВебСёрфером');
username = 'ВебСёрфер';
} else {
pathname = location.pathname;
myDomain = pathname.substring(0,pathname.lastIndexOf('/')) +'/';
// Установка параметра expire на год вперед.
var largeExpDate = new Date ();
largeExpDate.setTime(largeExpDate.getTime() + (365 * 24 * 3600 * 1000));
SetCookie('username',username,largeExpDate,myDomain);
}
}
function getCookieVal (offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)
break;
}
return null;
}
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" +
expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure"; : "");
}
document.write('<p align=center>Здравствуйте, ' + username + '</p>');
// --></SCRIPT>
|
| |
|
|
|
|
|
|
|
для: sim5
(07.09.2007 в 10:25)
| | хм, интересно, надо будет попробывать, выходит что можно использовать на поддоменах но только в одной конкретной зоне, ну а больше и не требуется в принципе то. Спасибо большое, сейчас начну пробовать | |
|
|
|