Symfony PDO会话升级到2.1后的存储问题
从2.0.X升级到2.1后,我的Symfony应用程序出现了一些问题。在升级之前,应用程序使用PdoSessionStorage很好。假设2.1中PdoSessionStorage的配置有一些不同,但我认为我可以进行这些更改 我看到的问题是,没有数据被添加到会话表中的session_value(db_data_col)列中。它正在为当前会话添加一个新记录,但它将数据保留为空 有人有这个问题吗 我的配置包含以下内容:Symfony PDO会话升级到2.1后的存储问题,symfony,symfony-2.1,Symfony,Symfony 2.1,从2.0.X升级到2.1后,我的Symfony应用程序出现了一些问题。在升级之前,应用程序使用PdoSessionStorage很好。假设2.1中PdoSessionStorage的配置有一些不同,但我认为我可以进行这些更改 我看到的问题是,没有数据被添加到会话表中的session_value(db_data_col)列中。它正在为当前会话添加一个新记录,但它将数据保留为空 有人有这个问题吗 我的配置包含以下内容: framework: session: handler_
framework:
session:
handler_id: session.handler.pdo
parameters:
pdo.db_options:
db_table: session
db_id_col: session_id
db_data_col: session_value
db_time_col: session_time
services:
pdo:
class: PDO
arguments:
dsn: "mysql:host=%database_host%;port=%database_port%;dbname=%database_name%"
user: %database_user%
password: %database_password%
session.handler.pdo:
class: Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler
arguments: [@pdo, %pdo.db_options%]
我也有同样的问题。在查看了PdoSessionHandler.php代码之后,我发现该代码依赖于session_id是uniq这一事实。如果您和我一样,并且基于此创建了会话表,则情况并非如此 编辑:事实就是这样。。我不知道为什么在我的db里不是这样
在我的情况下,为了修复它,我必须清空会话表并使会话id字段uniq了解发生了什么。我们发现了一些修改$\u会话的旧代码。S2.1将其在$_会话中使用的键从“_symfony2”更改为“sf2*”是否尝试使用探查器工具栏检查数据库上运行的查询?我查看了一下,但在探查器中没有看到会话的任何内容。我确实尝试在Symfony\Component\HttpFoundation\Session\Storage\Handler\PdoSessionHandler::write中转储$data的值,但它只是一个空字符串Hey Yann,感谢您的回复。我试过这个,但似乎对我不起作用。我会继续努力想办法的。