結局バージョンを見るしか…。

結局バージョンを見ることにした。

1
2
3
4
5
6
7
8
if ($CGI::Session::VERSION < 4)  {# Ver3.xx
    require CGI::Session::MySQL;
    $CGI::Session::MySQL::TABLE_NAME = "";# -w対策
    $CGI::Session::MySQL::TABLE_NAME = $tn->{session};
    $session = CGI::Session->new("dr:MySQL", $cgi, {Handle => $dbh}); # クッキーやフォーム情報からIDを自動的に取得する。なければ新しく作成。
} else { # Ver4.xx
    $session = CGI::Session->new("dr:mysql", $cgi, {Handle => $dbh, TableName => $tn->{session}}); # クッキーやフォーム情報からIDを自動的に取得する。なければ新しく作成。
}

今度は4.xxでは未調整。。。

4.xxでも、動作は確認した。

3.xxで失敗していたのは、実際にはevalとrequireの書き方がまずかった気がする。

1
2
if (eval q{require CGI::Session::MySQL}) {
...

とやっていればよかったのかも?

comments powered by Disqus
Hugo で構築されています。
テーマ StackJimmy によって設計されています。