powered by simpleCommunicator - 2.0.35     © 2025 Programmizd 02
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как заставить cookies сохраняться между сеансами?
18 сообщений из 18, страница 1 из 1
Как заставить cookies сохраняться между сеансами?
    #32120083
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемые коллеги!

Понадобилось сохранить инфу в куках, что то не получается.

Работаю в Intranet, WinNT4 (Regional settings - RUSSIA), IIS4, ASP (VBscript).
Отлаживаюсь на MSIE6+SP1, куки включены.

Вот фрагмент кода:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
<%@ LANGUAGE= "VBSCRIPT" %> 
<%
Response.Expires
strID = Request( "id" )
If strID =  "" Then
  strID = Request.Cookies(" IDcode ")
Else  
  strID = UCase( Trim(strID) )
  Response.Cookies(" IDcode ") = strID
  Response.Cookies(" IDcode ").Expires = Date + 30 

  ' Эту строку вставил специально для проверки, создался ли кук
  strID = Request.Cookies("IDcode")
End if
:::


Проверочная строка во фрагменте Else показывает, что кук создается, так как strID принимает нужное значение, в то же время, если снова вернуться на страницу, то strID - пустое.

Есть подозрение, что куки получаются сессионные и игнорируется дата актуальности ( Response.Cookies(..).Expires )

Пробовал задавать дату и явно, вот так:
-- "12/31/2003"
-- #December 31, 2003#
Результат - тот же.

Вопрос: Где я не прав и что делать?
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120207
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну что, господа гуру, трудный вопрос я задал?
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120316
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на первый взгляд всё правильно,
только что это за строка ?
Код: plaintext
Response.Expires
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120325
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Response.Expires [=0] - делает страницу устаревшей в момент создания, что предотвращает ее кэширование.

hDrummer, поделюсь рецептом засолки грибов, только помоги!
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120330
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да просто нуля там не увидел, вот и удивился.
а я сейчас сижу на курсах по асп.нет и прохожу куки :)
а на асп уже с полгода ничего не писал - подзабылось уже...
но ради грибо что-то сейчас придумаем ;)
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120336
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
You can't just add 30 to Date. Use the DateAdd function to add 30
days to today's date.
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120366
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал DateAdd, вот:

Microsoft VBScript runtime error '800a0005'

Invalid procedure call or argument: 'DateAdd'

Приходится юзать IIS со старой версией VBS, а как обновить - не знаю. И, что характерно, админ тоже не знает :0(

В результате пришлось часть функций, которые есть в поздних версиях, переписать ручками. Ну и наслаждаться непонятками, то ли версия кривая, то ли руки.

Абидна, да!

ЗЫ А Date+30 корректно работает (во всяком случае - в других ситуациях). Я уже сегодня несколько мегатонн примеров кода просмотрел - в основном так и пишут, без DateAdd.
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120380
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот смотрю по ходу дела в асп.нет
есть такой код

Response.Cookies.Add(objNewCookie);

может и в асп надо в респонс добавлять созданный кукис?
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120388
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, в ASP еще не ОО подход.
Так, серверные объекты есть, а остальное - обычный процедурный язык.
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120395
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если попробовать отдельно эти все вещи прописать, беp if'ов и т.д. - будет работать?

типа
<%@ LANGUAGE="VBSCRIPT"%>
<%
Response.Cookies("IDcode") = "something"
Response.Cookies("IDcode").Expires = Date + 30
%>
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120404
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня - отработало и сохранилось.

и вот такой код работает

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
<html>
<head>
</head>
<body>
<%@ LANGUAGE= "VBSCRIPT" %> 
<% 
Response.Write(Request.Cookies( "IDcode" ))
Response.Cookies( "IDcode" ) =  "something"  
Response.Cookies( "IDcode" ).Expires = Date +  30  
%>
</body>
</html>
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120406
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
т.е. отработало и сохранилось.
вывод - с кодом по сохранению кукисов всё ок. что-то в логике не так или настройке приложения.

а вообще можно ж глянуть файл сам кукисный есть на клиенте или нет?
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120412
Фотография jimmers
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какие именно грибы будут?
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120414
Фотография akuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, все локальные диски перерыл, в поисках работающего кода и без толку, видать в архив легло.

Есть одна подозрительная строчка,
strID = Request("id")
врядли на что то влияющая, но

MSDN:
All variables can be accessed directly by calling Request(variable) without the collection name. In this case, the Web server searches the collections in the following order.

QueryString
Form
Cookies
ClientCertificate
ServerVariables
If a variable with the same name exists in more than one collection, the Request object returns the first instance that the object encounters.

It is strongly recommended that when referring to members of a collection the full name be used. For example, rather than Request.(AUTH_USER) use Request.ServerVariables(AUTH_USER). This will allow the server to locate the item more quickly.

Попробуй так, посмотри чё выдаст. И на всякий случай проверь настройки браузёра. Извини, самому лень проверять.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
<%@ LANGUAGE= "VBSCRIPT" %> 
<%
Response.Expires
strID = Request( "id" )
Response.Write  "param: "  & strID &  "</br>" 
If strID =  "" Then
  strID = Request.Cookies(" IDcode ")
  Response.Write " load:  " & strID & " </br> "
Else  
  strID = UCase( Trim(strID) )
  Response.Cookies(" IDcode ") = strID
  Response.Cookies(" IDcode ").Expires = Date + 30 
  Response.Cookies("IDcode ").Path = " \ "

  strID = Request.Cookies(" IDcode ")
  Response.Write " expires:  " & (Date + 30 ) & "</br> "
  Response.Write " saved:  " & strID & " </br>"
End if
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120416
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И на всякий случай проверь настройки браузёра
вот в браузере privacy в high если стоит - до свиданья кукис.
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120420
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кажется, нашел траблу.

Поднял я у себя, на W2000 pro, IIS №5, положил скрипты, подключился с другого хоста (ибо, как известно, куки с localhost не ставятся) - вуаля!
Есть куки.

Значица - кривенький у нас IIS4 стоит.
И это радует, т.к. отводит подозрения от моих рук.

Спасибо hDrummer, урожая тебе грибного
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120427
Фотография hDrummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо :)

(ибо, как известно, куки с localhost не ставятся)
именно с локалхоста я и генерил кукисы
теми кусками кода, который выкладывал ;)
и всё присутствует
ЗЫ
ну ОК что у тебя всё получилось.
i'm glad.
...
Рейтинг: 0 / 0
Как заставить cookies сохраняться между сеансами?
    #32120429
Фотография Jimmy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, пока писал постинг, здесь мозговой штурм организовался :0))

Спсаибо, парни, за участие!
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Как заставить cookies сохраняться между сеансами?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]