perlにおけるセッションIDについて
sessionIDがページを更新するたびに変わってしまいます。
その結果、前回セッションに保存した値を読み込めません。
my $cgi = new CGI;
CGI::Session->name("SESSION_ID");
my $session = new CGI::Session("driver:File", $cgi, {Directory=>'./session'});
print $session->header(-charset=>'UTF-8');
print $session->id();
print $session->param("name"); #表示されず。
というようにしてセッションIDを表示すると、毎回変化します。
どうしたらIDを変わらないように出来るでしょうか?
ちなみに、セッションに書き込むのは、
my $cgi = new CGI;
CGI::Session->name("SESSION_ID");
my $session = new CGI::Session("driver:File", $cgi, {Directory=>'./session'});
$session->header(-charset=>'UTF-8');
$session->param("name", "abc");
$session->flush();
undef($session);
こんな処理をしてます。
お礼
再度のご回答ありがとうございます。 >つまり、表示するページ内のリンクやフォームにセッションIDを動的に埋め込んでやるって事ですから、 >それらのページは全て CGI で出力しなきゃならんワケでして、 >現在セッション管理をされていない場合、メールフォームをどう変更したらよいのか? >っていう感覚とはだいぶ違うと思うんですが、その辺は大丈夫なんですよね。 ・・・全然大丈夫ではありませんでした! そうですよね!全部CGIにしないとセッションIDの保持なんてできませんよね…(かなり今更ですね) 結構大変ですか…頑張ってみるのか投げ出すのか迷いますね…笑 勉強してみます。 無知をさらしまくりで申し訳ありません。 ありがとうございました。