dabian 2012-07-08
在启用ci的sess_use_database后,发现一个问题,我添加session是成功的,取出session失败(在set_userdata后输出session有结果,数据库中也有结果,但是取出session的时候没有值),于是在网上找了一圈没找到结果。
在日志中看到:ERROR - 2012-07-08 06:03:48 --> Severity: Notice --> unserialize(): Error at offset 103 of 215 bytes /var/www/begindo/system/libraries/Session.php 724
然后进一步输出要unserialize的值,发现有乱码,然后想起来了我存储的session有中文字符,而数据库中时使用的默认字符集不是utf8导致的。
故启用sess_use_database时,创建数据库要使用跟你程序处理相同的字符集(我的是utf8)。
-------
买了linode后,在使用ci的时候发现session又有问题了,然后再网上在了有提到时区导致的,然后重新选择了时区间。
tzselect: 5-9-1-1. cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
/etc/sysconfig/clock =》utc=false