<?xml version='1.0' encoding="utf-8"?>
      <rss version='2.0'>
      <channel>
      <title>Форум на Исходниках.RU</title>
      <link>https://forum.sources.ru</link>
      <description>Форум на Исходниках.RU</description>
      <generator>Форум на Исходниках.RU</generator>
  	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=265216</guid>
        <pubDate>Wed, 17 Dec 2003 13:38:33 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=265216</link>
        <description><![CDATA[Voice:  по ходу еще один вопрос:<br>как послать кукис?<br>т.е. я могу прочитать его только при след. обращении к какой-то процедуре, а мне надо, чтобы можно было и в этом же.<br>Пример:<br>//в этой процедуре я обновляю кукис<br>procedure MyProc(Sender: TObject;<br>  Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);<br>var MyCook:TStrings;<br>User,Pass:string;<br>begin<br>...<br>MyCook:=TStringList.Create;<br>MyCook.Clear;<br>MyCook.Add(&#39;LastLogin=&#39;+User);<br>MyCook.Add(&#39;LastPassword=&#39;+Pass);<br>MyCook.Add(&#39;LastVisit=&#39;+FormatDateTime(&#39;dd mmmm yyyy hh:mm:ss&#39;,now));<br>Response.SetCookieField(MyCook,&#39;&#39;,&#39;&#39;,now+1,true);<br>{***}<br>MyCook.Free;<br>end;<br><br>procedure TMyWebModule1.WebActionItem1Action(Sender: TObject;<br>  Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);<br>begin<br>MyProc(Request, Response);//обновляем кукис<br>Request.CookieFields.Text;//возвращает старый кукис, который мы писали в прошлый раз, а мне нужен новый, который уже обновили (предыдущая строка)<br>end;<br><br>Мне надо в месте {***} как-то послать этот кукис, чтобы он обновился... Как это можно сделать (если вообще можно)? Или я что-то не так сделал? ]]></description>
        <author>Voice</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=264934</guid>
        <pubDate>Wed, 17 Dec 2003 08:21:03 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=264934</link>
        <description><![CDATA[Voice:  не..... опять тупизм....<br>когда я вошел и потом просто жму Ctrl+R - все ОК. Он мне пишет &quot;Здравствуйте, &lt;UserName&gt;&quot;<br>Но когда я пытаюсь что-то нажать (у мя там есть формы с кнопками, типа &quot;Показать&quot; и т.п.), он мне опять потом пишет, что я гость.... Т.е. кукис очищается (я даже время жизни поставил now+1*24*3600, что явл. 236 лет....)<br>Вщм, если просто чистить кэш, то все ок, а если по форме обновить (нажать какую-нть кнопку), то кукис почему-то чистится весь и в нем ничего нету... ]]></description>
        <author>Voice</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=264928</guid>
        <pubDate>Wed, 17 Dec 2003 08:07:32 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=264928</link>
        <description><![CDATA[Voice:  Now возвращает полную дату, где целое число - это кол-во дней от 31.12.1899, а число после запятой указывает кол-во миллисекунд с начала суток<br>Прибавляя 1 к Now, мы увеличиваем время жизни Cookies&#39;а на сутки, а не на секунду.<br>Вот если бы мы прибавили что-то типа 1/(24*3600), тогда увеличили бы на секунду...<br>Понял только что (раньше пробовал, но почему-то не получалось)...<br>Короче, надо было страничку обновлять Ctrl+R, чтобы очистить кэш, тогда кукис нормально читается. Но опять повторюсь, раньше почему-то не получалось (но возможно от монотонности задачи меня глючило (постоянно смотреть один и тот же результат) и поэтому я что-то не так делал)<br>В общем, все ок вроде <!--emo&:)--><img src='http://forum.sources.ru/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif' /><!--endemo--> ]]></description>
        <author>Voice</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=264689</guid>
        <pubDate>Tue, 16 Dec 2003 19:27:08 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=264689</link>
        <description><![CDATA[SergeS:  Оно даёт либо не в течении суток а в течении секунды <!--emo&:)--><img src='http://forum.sources.ru/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif' /><!--endemo--><br>тогда надо ставить Now + 3600*24 <br>Либо где ктото не правильно переводит время ... <br><br><span style='color:gray'><b>Добавлено в</b> <time class="tag-mergetime" datetime="2003-12-16T19:28:18+00:00">16.12.03, 19:28</time></span><br> Кукис читается на следующем запросе после сохранения ]]></description>
        <author>SergeS</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=261502</guid>
        <pubDate>Thu, 11 Dec 2003 12:10:26 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=261502</link>
        <description><![CDATA[Voice:  да. я при записи же и указываю <br>Expires := Now + 1;//сохраняем этот cookie в течение суток<br>а потом он почему-то не читается..... точнее не читался. Сейчас у меня другой бред.<br>в общем вот:<br>при входе на страничку юзеру подгружается обычная (типа для Гостя). Если он указывает имя и пароль, при нажатии на &quot;Вход&quot; идет поиск этого юзера в БД. Если все ОК (если он там есть), то опять происходит запись в кукис и автоматом вызывается первая процедура.<br>В ней-то и читается этот кукис и в ней же смотрится. если этот юзер был, то грузится страница уже не для Гостя, а для Своего<br>Так вот. Новый берд заключается в том, что этот кукис читается через раз. Т.е. мы записываем что-то и это что-то считывается только на второе чтение...<br>например:<br>1. вошли, ввели Login: Vasia Pass: Pupk<br>2. читаем - пусто<br>3. опять просто вводим Login: abc Pass: 123<br>4. читаем - Vasia, Pupk<br>5. вводим Login: qwerty Pass: 0987<br>6. читаем abc, 123...............................<br>можно ничего не вводить, т.е. просто жать &quot;войти&quot;, тоже самое - т.е. то, что было в полях ввода в позапрошлый раз, то и выводится. Т.е. не в ПРОШЛЫЙ, а в ПОЗАпрошлый ]]></description>
        <author>Voice</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=258226</guid>
        <pubDate>Fri, 05 Dec 2003 14:14:16 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=258226</link>
        <description><![CDATA[SergeS:  Да ни прич чтении чекать а при записи указать ]]></description>
        <author>SergeS</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=257948</guid>
        <pubDate>Fri, 05 Dec 2003 08:00:35 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=257948</link>
        <description><![CDATA[Voice:  дык я ж его даже прочитать не могу, т.к. он пуст. Как же я могу прочитать время его действия?<br>А процедура вызывается по-любому, там же ошибок нету, чего ей не запуститься? ]]></description>
        <author>Voice</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=257745</guid>
        <pubDate>Thu, 04 Dec 2003 19:14:40 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=257745</link>
        <description><![CDATA[SergeS:  Проверь время действие кука - и процедура запускается при томже обращении или нет ? ]]></description>
        <author>SergeS</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      <item>
        <guid isPermaLink='true'>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=257518</guid>
        <pubDate>Thu, 04 Dec 2003 13:03:13 +0000</pubDate>
        <title>Cookies</title>
        <link>https://forum.sources.ru/index.php?showtopic=39744&amp;view=findpost&amp;p=257518</link>
        <description><![CDATA[Voice:  Я пишу прогу в CGI интерфейсе. Как можно запоминать какого-то юзера, который зашел на страничку, сгенеренную этой прогой?<br>Сначала я отсылаю его в процедуру регистрации:<br>procedure TwbmdLibrary.wbmdLibrarywbactitmAuthorizAction(Sender: TObject;<br>  Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);<br>begin<br>//проверяем пользователя<br>if Такой_Юзер_Есть=true then<br>   //если у него есть разрешение на что-то (это не важно), то пишем в кукисах, что он &quot;свой&quot;<br>   with Response.Cookies.Add do<br>            begin<br>            Name := &#39;LastName&#39;;<br>            Value := Request.QueryFields.Values[&#39;NameAuth&#39;];//берется из поля ввода, где вводится имя<br>            if Value = &#39;&#39; then<br>               Value := Request.CookieFields.Values[&#39;LastName&#39;];<br>            Secure := True;<br>            Expires := Now + 1;//сохраняем этот cookie в течение суток<br>            end;<br>end;<br><br>потом в другой процедуре я пытаюсь прочитать этот кукис, но он почему-то к тому времени уже пуст:<br>Request.CookieFields.Values[&#39;LastName&#39;] всегда пуст и даже<br>Response.Cookies.Count всегда равен 0<br>Как быть? ]]></description>
        <author>Voice</author>
        <category>Delphi: Сетевое программирование</category>
      </item>
	
      </channel>
      </rss>
	