【发布时间】:2015-07-15 17:12:07
【问题描述】:
// Run the update query
$this->CI->db->where('session_id', $this->userdata['session_id']);
$this->CI->db->update($this->sess_table_name, array('last_activity' => $this->userdata['last_activity'], 'user_data' => $custom_userdata));
我在 CodeIgniter 中使用会话时遇到问题。我下载了 de las CI 版本,我必须修改很多东西才能使其正常工作,但是,当我尝试登录我的网站时,我遇到了这个问题,1064 错误 MySQL: p>
您的 SQL 语法有错误;检查手册 对应于您的 MySQL 服务器版本,以便使用正确的语法 靠近'SET
last_activity= 1430854831,user_data= 'a:8:{s:9:\"user_data\";s:0:\"\"' 在第 1 行更新集
last_activity= 1430854831,user_data= 'a:8:{s:9:\"user_data\";s:0:\"\";s:10:\"id_cliente\";s:1:\"2\";s:4:\ "姓名\";s:14:\"马丁 Sosa\";s:8:\"lastName\";s:6:\"Plaz\";s:9:\"lastName2\";s:4:\"Loah\";s:15:\" numberExpedient\";s:5:\"00002\";s:5:\"email\";s:27:\"mart94@hotmail.com\";s:3:\"rol\";s: 1:\"1\";}' 在哪里session_id= '6b4cceb3679bdc63a4534c6be0efd54f'文件名:libraries/Session.php
行号:289
【问题讨论】:
-
根据您的错误
$this->sess_table_name为空,请确保您在update()函数中提供表名 -
我已经编辑了 Sessions.php 文件,并向 sess_table_name 添加了一个值,但是,消息相同,我检查了 mmy config.php 文件,但是变量不存在,它是 CI 的新版本,但是在我拥有的 CI 以前的版本中,config.php 中的变量,我不喜欢那个。 :(
-
旧 config.php `$config['sess_cookie_name']='ci_session'; $config['sess_expiration'] =7200; $config['sess_expire_on_close']=FALSE; $config['sess_encrypt_cookie']=TRUE; $config['sess_use_database']=TRUE; $config['sess_table_name']='ci_sessions'; $config['sess_match_ip']=FALSE; $config['sess_match_useragent']=FALSE; $config['sess_time_to_update']=300; `
-
新的 config.php 变量 new ` $config['sess_driver']= 'files'; $config['sess_cookie_name']='ci_session'; $config['sess_expiration']=7200; $config['sess_save_path']=NULL; $config['sess_match_ip']=FALSE; $config['sess_time_to_update']=300; $config['sess_regenerate_destroy']=假; ` PS:我不知道如何将我的代码与 de StackOverflow 标签放在一起:(
标签: php mysql sql codeigniter