用户
 找回密码
 入住 CI 中国社区
搜索
查看: 4941|回复: 11
收起左侧

[HELP] session类如何添加自定义的session数据

[复制链接]
发表于 2011-5-8 10:19:13 | 显示全部楼层 |阅读模式
                                        $newdata = array(
                                                                'username'=>'username'
                                                        );
                                        $this->session->set_userdata($newdata);
                                        echo $this->session->userdata('username');

是这样添加的吗?为什么会出现错误:
A Database Error Occurred
Error Number: 1054

Unknown column 'user_data' in 'field list'

UPDATE `ci_sessions` SET `last_activity` = 1304820795, `user_data` = 'a:1:{s:8:\"username\";s:4:\"root\";}' WHERE `session_id` = 'b830573622ea252c19840336d0b9fd92'

Filename: E:\appserv\www\CodeIgniter_2.0.1\system\database\DB_driver.php

Line Number: 330
发表于 2011-5-8 10:49:48 | 显示全部楼层
你有没有建ci_sessions这张表啊?
 楼主| 发表于 2011-5-8 10:53:58 | 显示全部楼层
回复 jeongee 的帖子

建了
里面有四个字段
发表于 2011-5-8 10:57:36 | 显示全部楼层
回复 xyst0524 的帖子

你怎么建的?
CREATE TABLE IF NOT EXISTS  `ci_sessions` (
session_id varchar(40) DEFAULT '0' NOT NULL,
ip_address varchar(16) DEFAULT '0' NOT NULL,
user_agent varchar(50) NOT NULL,
last_activity int(10) unsigned DEFAULT 0 NOT NULL,
user_data text DEFAULT '' NOT NULL,
PRIMARY KEY (session_id)
);
这里明明有user_data字段
 楼主| 发表于 2011-5-8 11:01:32 | 显示全部楼层
回复 jeongee 的帖子

不是只要4个字段吗?
CREATE TABLE `ci_sessions` (
`session_id` VARCHAR( 100 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`ip_address` VARCHAR( 50 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`user_agent` VARCHAR( 50 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`last_activity` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
PRIMARY KEY ( `session_id` )
) ENGINE = MYISAM ;
发表于 2011-5-8 11:06:37 | 显示全部楼层
 楼主| 发表于 2011-5-8 11:26:21 | 显示全部楼层
回复 jeongee 的帖子

杯具...
$this->load->view('leavemessage/leavemessage', $session_id);
这个$session_id到视图里 <?php echo $session_id;?> 怎么会变成未知的变量呢?
发表于 2011-5-8 12:00:03 | 显示全部楼层
回复 xyst0524 的帖子

这是CI基础知识,建议你先看下手册,再进一步使用CI,一定要看手册。
http://codeigniter.org.cn/user_guide/general/views.html
 楼主| 发表于 2011-5-8 12:15:04 | 显示全部楼层
回复 jeongee 的帖子

快崩溃了,是不是只能传递数组或者对象啊,单个的变量为什么就不能传递呢
发表于 2011-5-8 12:23:14 | 显示全部楼层
本帖最后由 jeongee 于 2011-5-8 12:23 编辑

回复 xyst0524 的帖子

用别人的框架就得按其设定好的规则来啊,要不然不如不用框架呢。没什么好崩溃的,使用之前,你还是深入了解一下CI比较好。

本版积分规则