困った。



ローカル環境のCGI::SessionをVer4.xxにしたら、色々と変わっていて、そのままではエラーを出すようになった。

MySQLでテーブルの名前を変更して使っていた(不細工だが、直接モジュールをロードして変数を変更していた)のだが、そのモジュールの名前と場所が変わったのだ。



実際にはよりスマートにテーブル名を変更できるようになったのだが…。



—- 3.xx —-



1
2
3
4
use CGI::Session qw(-ip_match);
use CGI::Session::MySQL;
$CGI::Session::MySQL::TABLE_NAME = $tablename;
my $session = CGI::Session->new("dr:MySQL", $cgi, {Handle => $dbh});


—- 4.xx —-



1
2
use CGI::Session qw(-ip_match);
my $session = CGI::Session->new("dr:mysql", $cgi, {Handle => $dbh, TableName => $tablename});


CGI::Sessionのバージョンを見て処理をわけないといけないんだろうなぁ…。