Codeigniter 2.1.3:sess_destroy() 导致未定义的索引:session_id 等在 'sess_use_database' == TRUE 时发出通知

2024-01-02

我一直在使用数据库的会话测试 codeigniter 的功能,每当我注销(使用 sess_destroy())时,我都会收到以下通知:

            A PHP Error was encountered

            Severity: Notice

            Message: Undefined index: session_id

            Filename: libraries/Session.php

            Line Number: 272
            A PHP Error was encountered

            Severity: Notice

            Message: Undefined index: ip_address

            Filename: libraries/Session.php

            Line Number: 272
            A PHP Error was encountered

            Severity: Notice

            Message: Undefined index: user_agent

            Filename: libraries/Session.php

            Line Number: 272
            A PHP Error was encountered

            Severity: Notice

            Message: Undefined index: last_activity

            Filename: libraries/Session.php

            Line Number: 272
            A PHP Error was encountered

            Severity: Notice

            Message: Undefined index: session_id

            Filename: libraries/Session.php

            Line Number: 288
            A PHP Error was encountered

            Severity: Notice

            Message: Undefined index: last_activity

            Filename: libraries/Session.php

            Line Number: 289

我需要做什么来解决这个问题? (我知道我可以关闭错误报告等,但我更感兴趣的是为什么会发生这种情况以及如何修复它)。

我用它来创建表:

                CREATE TABLE IF NOT EXISTS  `ci_sessions` (
                        session_id varchar(40) DEFAULT '0' NOT NULL,
                        ip_address varchar(45) DEFAULT '0' NOT NULL,
                        user_agent varchar(120) NOT NULL,
                        last_activity int(10) unsigned DEFAULT 0 NOT NULL,
                        user_data text NOT NULL,
                        PRIMARY KEY (session_id),
                        KEY `last_activity_idx` (`last_activity`)
                );

会话库是自动加载的。


随着 2.1.3 版本的发布,这导致了您的问题:

修复了一个错误 (#1314) - 会话库方法 sess_destroy() 没有销毁用户数据数组。

$this->tank_auth->logout() 包含函数 sess_destroy(); 因此,调用此函数后,您无法在 $this->_show_message() 中使用 set_flashdata() 。

您需要做的是创建一个新会话。您的注销方法在 auth.php 中应如下所示:

/**
 * Logout user
 *
 * @return void
 */
function logout() {
    $this->tank_auth->logout(); // Destroys session
    $this->session->sess_create();
    $this->_show_message($this->lang->line('auth_message_logged_out'));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Codeigniter 2.1.3:sess_destroy() 导致未定义的索引:session_id 等在 'sess_use_database' == TRUE 时发出通知 的相关文章

  • 禁用 WooCommerce 手动/编辑订单的电子邮件通知

    需要 WooCommerce 专业知识 我需要禁用手动创建的订单的电子邮件通知 我必须使用处理状态 由于处理订单状态的自定义挂钩 我无法创建自定义状态 理想情况下 手动订单页面中可以勾选一个复选框 勾选后 它将禁止在每种状态下向客户发送电子
  • 通过 Sparkpost 发送 iCal 邀请

    我正在尝试使用 SparkPost 通过电子邮件以附件形式发送日历邀请 但收到电子邮件后邀请不会打开 我使用两个文件 calendarinvite php 来创建邀请 使用 Sendemail php 来发送电子邮件 calendarinv
  • 我可以让 swagger-php 在查询字符串上使用数组吗?

    我使用 Swagger php 当我定义查询字符串上的参数时 它可以是一个数组 但据我所知 它不支持这种查询字符串 https api domain tld v1 objects q 1 q 5 q 12 我相信这会被设定in the co
  • 如何让Apache服务index.php而不是index.html?

    如果我将以下行放入index html文件 使 Apache 包含index php file 参观index html页面向我显示了这个 这是为什么 为什么它实际上不包含 PHP 文件 正如其他人指出的那样 您很可能没有 html设置为处
  • laravel - 使用请求类或输入类

    在宁静的控制器中 我应该使用哪个类来获取传递的变量 member gt email Input get email or member gt email Request get email 两种选择都适合我 但有什么区别 Input get
  • get url 重定向时 File_get_contents() 不起作用

    我正在使用的功能是 function http post url data data url http build query data data len strlen data url date default timezone set
  • 如何检测字符串中的非 ASCII 字符?

    如果我有一个 PHP 字符串 如何以有效的方式确定它是否至少包含一个非 ASCII 字符 我所说的非 ASCII 字符是指不属于该表的任何字符 http www asciitable com http www asciitable com
  • 如何对 SQL 进行多次查询

    我正在尝试创建一个表 并在 PHP 脚本的帮助下在数据库中插入一些值 虽然只插入 1 行 但效果很好 当我尝试输入更多行数时 出现错误 我需要为每个查询编写完整的插入语句 因为我正在使用在线 Excel 到 SQL 查询转换器
  • 如何隐藏 URL 中的锚标记

    如何隐藏地址栏中以下链接 href 的哈希值 a href index php dev name 所以它会将我重定向到index php dev name 但我希望地址栏只显示index php 您可以使用 Javascript oncli
  • 在我的 index.php 中加载 CSS 和 JS 等资源时出现错误 403

    我使用的是 Linux Elementary OS 并在 opt 中安装了 lampp My CSS and JS won t load When I inspect my page through browser The console
  • PHP 无法加载动态库“php_pdo_oci.dll”

    我在 Windows 8 上运行 Apache 2 4 7 和 PHP 5 5 9 我安装了 PHPUnit 并开始弹出此警告图像 警告 是的 我在 php ini 中启用了扩展加载以及 extension dir 以更正文件夹 并且该文件
  • 在 PHP 中比较两个对象的最快方法是什么?

    假设我有一个对象 在本例中为 User 对象 并且我希望能够使用单独的类来跟踪更改 用户对象不必以任何方式改变它的行为才能发生这种情况 因此 我的单独的类创建它的 干净 副本 将其存储在本地某个位置 然后可以将 User 对象与原始版本进行
  • 如何在HTML中的PHP中注释掉HTML和PHP?

    这是我想注释掉的一行代码 h1 class post title a href title a h1 一种流行的注释方法是分别注释 html 和 php 有一个更好的方法吗
  • WordPress 包含 SVG 文件错误

    我使用 PHP 和 WordPress 在本地主机上 我可以毫无问题地包含 SVG 文件 但在实时服务器上 我尝试包含一个 SVG 文件以便能够使用 CSS 对其进行样式设置 我收到此错误消息 Parse error syntax erro
  • 如何在 Zend MVC 中实现 SSL

    我之前已经通过使用特定的安全文件夹 例如服务器上的 https 文件夹与 http 文件夹 实现了安全页面 我已经开始使用 Zend Framework 并希望应用程序的某些部分 例如登录 使用 https 我在谷歌上搜索过 甚至在这里搜索
  • 我可以在 PHP 会话变量中安全地存储用户名和密码吗?

    我想在 REST api 之上制作一个轻量级的 web 应用程序 用户只需进行一次身份验证 从那时起 所有针对 web api 的请求都希望通过以某种方式保持用户名和密码有效来完成 我已经做了一个工作原型我在哪里将用户名和密码存储在会话变量
  • Stream_context_set_params 不适用于 ssh2.sftp 包装器

    我想使用类似的功能here http www php net manual en function stream notification callback php 请检查以下代码 function notify notification
  • phpActiveRecord 日期时间格式不正确

    当尝试使用 phpActiveRecord 在表中创建记录时 出现以下错误 Invalid datetime format 1292 Incorrect datetime value 2013 06 20 11 59 08 PDT for
  • 从字符串中获取数字

    我有一个字符串 例如 lorem 110 ipusm 我想获取 110 我已经尝试过这个 preg match all 0 9 string ret 但这正在返回 Array 0 gt 1 1 gt 1 2 gt 0 我想要这样的东西 Ar
  • 使用 PHP 将 latin1_swedish_ci 转换为 utf8

    我有一个数据库 里面充满了类似的值 Dhaka 应该是 Dhaka 因为我在创建数据库时没有指定排序规则 现在我想修复它 我无法从最初获取数据的地方再次获取数据 所以我在想是否可以在 php 脚本中获取数据并将其转换为正确的字符 我已将数据

随机推荐

  • Azure DevOps gulp 步骤失败,找不到本地模块

    我有一个 Azure DevOps 构建步骤 为 angularjs 应用程序运行 gulp 我将 Gulp 文件路径设置为指向GulpFile js引用的任务应捆绑应用程序并将文件放入解决方案文件夹中的 zip 文件中 当我在 Visua
  • 如何设置 Amazon S3、回形针和 ENV 变量

    我尝试了许多不同的方法来使用 ENV 变量设置 S3 进行图像上传 但无法使其工作 我知道我的密钥和存储桶名称有效 因为当我将它们直接放入代码中时 我的图像会正确上传 但是 当我尝试切换到 ENV 变量时 事情不起作用 我使用了 Figar
  • 谷歌图表不显示轴标签

    这不适用于图像图表 我有以下代码可以生成正确的图表 但标签不显示 图表 div 位于另一个 div 中 该 div 用作我的页面上的选项卡 当我在未选择包含图表的选项卡时运行该函数时 图表将显示为没有标签 当我在选择选项卡的情况下运行该函数
  • android UDP连接,没有接收到任何数据

    我是这方面的新手 所以如果我问愚蠢的问题 请原谅我 我试图在 Eclipse 的 PC 模拟器和 Android 手机之间建立 UDP 连接 或两个 Android 手机设备之间 我有一个router并且手机通过路由器的 wifi 网络连接
  • 如何在 SQLAlchemy 中创建带有外键列表的字段?

    我正在尝试在另一个模型的字段中存储模型列表 下面是一个简单的例子 我有一个现有的模型 Actor 我想创建一个新模型 Movie 与场Movie list of actors import uuid from sqlalchemy impo
  • 使用 Angular ui-grid 时的列标题换行

    我已将我的 AngularJS SPA 应用程序从ng grid v2 0 7 to ui grid v3我的列标题不再环绕 我的列标题现在是单行并显示省略号 当列标题不适合时 此功能是否已被删除或者是否已被其他方法取代 我相信我已经找到了
  • SQL Server 2005 中的等周

    在 SQL Server 2008 中 可以通过以下方式找到 isoweek SELECT datepart iso week getdate 在 SQL Server 2008 之前 没有内置函数来查找 isoweek 我一直在寻找一个好
  • 如何同时使用多个键提取字典值?

    我遇到了以下问题 dict1 a 1 b 2 c 3 d 4 正常检索方法 dict1 a gt 输出 gt 1预期方法 dict1 a b gt 输出 gt 1 2 我的要求是通过同时提供多个键从字典中提取多个值 如上面预期方法中所述 有
  • 从 EST/EDT 转换为 GMT

    如何将日期时间从 EST EDT 转换为 GMT 但我不知道代码将在哪里运行 未知的本地时区 也不知道节省时间 你要TimeZoneInfo ConvertTimeToUtc http msdn microsoft com en us li
  • 找不到文件“obj\Debug\Program.exe.manifest”

    如果之前已经回答过这个问题 我们深表歉意 我的 VS2010 SP1 VB NET 环境发生了一些问题 我已经通过 ClickOnce 成功地编译和发布了项目 A 一段时间 然后尝试发布项目 B 并收到了错误 在文件 microsoft c
  • EJB 3.1 和 NIO2:监控文件系统

    我想我们大多数人都同意 NIO2 是一个很好用的东西 假设您想要监视文件系统的某些部分以获取传入的 xml 文件 现在这是一项简单的任务 但是 如果我想将这些东西集成到现有的 Java EE 应用程序中 这样我就不必启动另一个服务 应用程序
  • 如何通过复选框启用和禁用 DataGridView 中的特定行?

    我试图通过选中和取消选中 gridview 内的复选框来启用和禁用 DataGridView 中的特定行 C Windows 应用程序 我尝试使用 CellClick 事件 但未按预期工作 这是我尝试过的代码 private void da
  • Javascript removeEventListener 不在类内工作[重复]

    这个问题在这里已经有答案了 我一直在玩 es6 类 并尝试设置一个简单的鼠标类 addEventListener有效 但由于某种原因我无法删除它们removeEventListener 我猜这与上下文绑定有关 但我不知道如何解决这个问题 u
  • 如何访问共享库中的文件?

    我有一个带有 groovy 脚本的共享库 我在 jenkinsfile 中调用该脚本 如下所示 MySharedLibFunction some args 我的共享库中还有一个我想要执行的 ps1 文件 但如果我这样做powershell
  • 如何为 UIPickerView 行设置 Voice Over 辅助功能标签?

    我正在尝试使我的 Voice Over 的 UIPickerView 可访问 我注意到 UIPickerViewAccessibilityDelegate 协议相当不完整 它只允许您指定 pickerView 组件的标签和提示 而不是组件内
  • Junit4运行测试类固定次数并显示结果(eclipse)

    我希望能够运行测试类指定的次数 该类看起来像 RunWith Parameterized class public class TestSmithWaterman private static String args private sta
  • 如何使 Ionic 4 ion-col 高度相同

    我有一个带有主卡片的页面 其中包含网格内的其他小卡片 我希望所有列都具有相同的高度 这将是特定行内列之间的最大高度 这是我的模板和我的样式
  • iPhone : (id)copyWithZone:(NSZone *)zone :“区域”是什么?

    在类中实现 NSCopying 的此方法以启用复制时 区域参数使用什么 如果我设置一个新对象 我不需要用 allocWithZone 分配它 因为分配就足够了 我很困惑 这是过去的遗物 我们有多个 区域 来分配 如今 所有应用程序只有一个区
  • 流畅的 NHibernate compositeid 到映射类

    我试图弄清楚如何使用 CompositeId 来映射另一个类 这是一个测试用例 表格 TestParent TestParentId PK FavoriteColor TestChild TestParentId PK ChildName
  • Codeigniter 2.1.3:sess_destroy() 导致未定义的索引:session_id 等在 'sess_use_database' == TRUE 时发出通知

    我一直在使用数据库的会话测试 codeigniter 的功能 每当我注销 使用 sess destroy 时 我都会收到以下通知 A PHP Error was encountered Severity Notice Message Und