Автор Тема: Сесии  (Прочитано 3596 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Maximka

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 37
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.rdrk.com
Сесии
« : 08 Октября 2004, 11:01:14 »
$session = new CGI::Session::File($sid, { Directory => "/tmp" });

$sid = $session->id;


print "$sid
";



Вот предположим сессия создана, но вопрос как ее эту же сессию прочесть следующим скриптом, а то постоянно создается новая сессия

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
Сесии
« Ответ #1 : 08 Октября 2004, 11:18:37 »
perldoc CGI::Session::File
--------------------------------------------------------------------------------------------
my $sid = param(\'sid\') || cookie(\'sid\') || undef;
my $session = new CGI::Session::File($sid, { Directory => "/tmp" });
unless (defined $sid)
{
$sid = $session->id;
}
my $var="bla-bla-bla";
$session->param("var", $var);
my $var1= $session->param("var");
print $var1;
--------------------------------------------------------------------------------------------
And no religion too...

Оффлайн Maximka

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 37
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.rdrk.com
Сесии
« Ответ #2 : 08 Октября 2004, 11:45:45 »
Спасибо за ответ. но...



создали сессию.
А если иф срабатывает то я уже не вижу var1...

if ($take) {

my $var1= $session->param("var");
print $var1;

print "test";

exit;



}


my $session = new CGI::Session::File($sid, { Directory => "/tmp" });
unless (defined $sid)
{
$sid = $session->id;
}
my $var="bla-bla-bla";
$session->param("var", $var);

Оффлайн AnnA

  • Фанатка форума
  • Старожил
  • ****
  • Сообщений: 263
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Сесии
« Ответ #3 : 08 Октября 2004, 12:06:59 »
ух, пришлось мне поразбираться с этим зверем в своё время. :)
приветик.
$q=new CGI;
$sid $q->param(\'CGISESSID\')||undef;

if ($sid) {$session=new CGI::Session(undef, $q, {Directory=>\'./data/tmp\'});
$sid = $session->id();
$last_access  = $session->atime();
$first_created= $session->ctime();
#восстанавливаем параметры
$var=$session->param(\'var\');
print header(), start_html(),  h4("\\$sid = $sid
var = $var
$last_access
$first_created"), end_html(); 
 } #EO if ($sid)
 else { $session=new CGI::Session("driver:File", undef, {Directory=>\'./data/tmp\'});

$q->param(-name=>\'var\', -value=>\'some text\');
$session->expire("+1h");
$session->save_param($q);
$sid = $session->id();
print header(), start_html(), a({href=>"$ENV{\'SCRIPT_NAME\'}?CGISESSID=$sid",target=>"_self"},$sid),end_html();
      }
пока-пока. :)

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
Сесии
« Ответ #4 : 08 Октября 2004, 14:17:33 »
Maximka
не очень понял вопроса...

AnnA
Весьма странный ответ на ворпос... :)
And no religion too...

Оффлайн AnnA

  • Фанатка форума
  • Старожил
  • ****
  • Сообщений: 263
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Сесии
« Ответ #5 : 08 Октября 2004, 14:26:54 »
commander
неудивительно. исходя из того, что
Цитировать
commander:
не очень понял вопроса...
:)

Цитировать
Maximka:
но вопрос как ее эту же сессию прочесть следующим скриптом


commander не видите ответа на этот вопрос в примере кода? :)

Цитировать
Maximka:
то я уже не вижу var1


commander
Вы удивитесь, но пример восстановления параметров в коде тоже есть. ;)
пока-пока. :)

Оффлайн commander

  • Developer
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1298
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.webtips.ru
Сесии
« Ответ #6 : 08 Октября 2004, 15:18:15 »
AnnA
Искренне улыбался читая ваш пост... :)
я тоже могу привести код в котором будет 2000 строк и  восстановления параметров в коде тоже будет... :)
а не очень понял я вот этот вопрос:
Цитировать
создали сессию.
А если иф срабатывает то я уже не вижу var1...
And no religion too...

Оффлайн AnnA

  • Фанатка форума
  • Старожил
  • ****
  • Сообщений: 263
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Сесии
« Ответ #7 : 08 Октября 2004, 15:33:43 »
commander
2000 строк действительно было бы странным. хотя, как знать. ;)
в любом случае - вот как всё хорошо получилось: И Maximka
доволен (судя по тишине), и commander искренне заулыбался. :)
Цитировать
commander:
Весьма странный ответ на ворпос

и? :) чем же он вообще "странный", уж не говоря о "весьма"?
пока-пока. :)

Оффлайн Maximka

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 37
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.rdrk.com
Сесии
« Ответ #8 : 08 Октября 2004, 15:36:59 »
Спасибо ВСЕМ... и давайте жить дружно

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28