【问题标题】:Perl CGI::Session, Multiple Sessions with same IDs, MySQL DriverPerl CGI::Session,具有相同 ID 的多个会话,MySQL 驱动程序
【发布时间】:2013-10-21 03:45:57
【问题描述】:

我对 CGI::Session 有一些问题。

我尝试使用与 cgi 对象一起传递的现有会话 ID 创建一个新会话。通常会话应该重用数据库中的现有会话,但事实并非如此。相反,它会创建一个具有完全相同会话 ID 的新会话数据库条目。

以下是我的代码的相关部分:

CGI::Session->name("DCGISESSID");


$session = CGI::Session->new('driver:mysql', $cgi,
    {
        TableName=>'DSESSIONS',
        IdColName=>'id',
        DataColName=>'a_session', 
        Handle=>$dbh,
    });


$sessioncookie = CGI::Cookie->new(-name=>'DCGISESSID', -value=>$session->id, -expires=>'+1h', -path=>'/');

只要我不使用 name() 方法设置 cookie 名称并使用默认值 CGISESSID 作为 cookiename,代码就可以工作。但由于某种原因,在使用 CGI::Session->name("DCGISESSID"); 将其更改为 DCGISESSID 后它不起作用。

有人遇到同样的问题或有什么建议给我吗?

【问题讨论】:

    标签: database perl session cgi


    【解决方案1】:

    解决了这个问题。我将表配置为 false,这就是为什么 id 也不是主键。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-24
      • 2011-11-15
      • 2023-03-08
      • 2018-12-20
      • 1970-01-01
      • 1970-01-01
      • 2011-01-15
      • 2015-09-11
      相关资源
      最近更新 更多