当前位置: 首页 > 知识库问答 >
问题:

当我包括$this->load->library('session');属性会话将自动销毁

甄煜
2023-03-14

每当我添加$this时-

控制器功能:

public function logged()
{    
   $this->load->library('session');
   $this->load->view('includes/header');
   $this->load->view('includes/nav');
   $this->load->view('index'); 
   $this->load->view('includes/footer');
}

查看页面:

<h4><?php echo $this->session->flashdata('item'); ?></h4>

错误:遇到PHP错误

严重性:通知

消息:未定义的属性:CI_加载程序::$session

文件名:视图/索引。php

行号: 6

回溯:

文件:C:\xampp\htdocs\ravi2\application\views\index。php行:6函数:\u错误\u处理程序

文件:C:\xampp\htdocs\ravi2\application\controllers\welcome。php行:19函数:视图

File: C:\xampp\htdocs\ravi2\index.phpLine: 315功能:require_once


共有3个答案

乌骏
2023-03-14

在查看flash数据之前,您必须设置flash数据,如果您试图在未设置flash数据的情况下回显flash数据,这就是如何使用会话,请首先使用以下命令在控制器上使用构造函数加载会话:

 $this->load->library('session');   

或自动加载库中的会话帮助程序自动加载,然后按如下方式设置闪存数据:

 $this->session->set_flashdata("flashdataname", "data");

然后,在尝试回显flashdata之前,请始终检查是否已设置flashdata,例如:

if (!empty($this->session->flashdata("flashdataname"))) 
echo ....
和选
2023-03-14

两个建议:
1)也许只是自动加载自动加载配置文件中的会话库。

$autoload['libraries'] = array('database', 'email', 'session');

或者,默认情况下,控制器函数中的二次负载正在终止初始负载

2)如果您不能自动加载会话库,那么可以将其加载到日志函数所在的控制器结构中。

public function __construct()
{
    parent::__construct();

    $this->load->library('session');    
}
曾新立
2023-03-14

如果不想在自动加载中添加会话库。php而不是在控制器构造函数中手动加载,如下所示:

$this->load->library('session');

手册中最重要的是:因为加载器类是由CodeIgniter的基本控制器实例化的,所以在尝试从控制器构造函数内部加载库之前,请确保调用父::__construct()。

public function __construct()
{
    parent::__construct();
    $this->load->library('session');
}

在视图中,您可以使用以下选项:

if($this->session->flashdata('item')){
   // to do
}
 类似资料:
  • 问题内容: 我们的应用程序在30分钟后注销并重定向到登录页面,我在web.xml中指定会话超时,并使用requestProcessor进行重定向。我想向用户显示一条消息,指出会话过期后会话已过期,如何我可以这样做吗?自动注销?我想在“会话超时,请重新登录”页面上提示错误消息。那我怎么能检测到会话超时呢?有什么方法会自动触发吗? 问题答案: 创建一个活动检查器,该检查器每分钟检查是否发生了任何用户活

  • 我们重写了会话并且使用了3种存储介质来说实现了会话数据的存储,分别是file,memcache, redis. 在你使用会话的同时,应该先去 配置session. 开启会话 在herosphp中开启会话已经不再使用 session_start() 这个函数了,而是使用 Session::start(); 使用会话 在开启会话之后你就可以像操作php的原生session的方式来操作session了。

  • 会话用于获取与数据库的物理连接。 Session 对象是轻量级的,旨在每次与数据库进行交互时进行实例化。 持久对象通过Session对象保存和检索。 会话对象不应该长时间保持打开状态,因为它们通常不是线程安全的,应该根据需要创建和销毁它们。 Session的主要功能是为映射实体类的实例提供,创建,读取和删除操作。 在给定时间点,实例可能存在以下三种状态之一 - transient - 持久化类的新

  • Meteor 是一个响应式框架。这意味着随着数据的变化, App 的改变并不需要你显式地做任何事情。 事实上,我们已经看到过我们的模板是如何根据数据和路由规则的变化去进行改变的。 我们将在后面的章节去深入了解这里面是如何工作的,但我们现在想介绍一些基本的响应性功能,它对于普通的 App 是非常有用的。 Meteor 的会话(Session) 现在在 Microscope 下,用户在 App 中的当

  • 本文向大家介绍CI框架中$this->load->library()用法分析,包括了CI框架中$this->load->library()用法分析的使用技巧和注意事项,需要的朋友参考一下 本文分析了CI框架中$this->load->library()的用法。分享给大家供大家参考,具体如下: 我第一次加载失败,原来是文件名和类名不同的原因,先总结关于CI加载你自己的类文件注意事项: 1.第三方加载

  • 主要内容:设置会话如前所述,我们可以在Web应用程序客户端使用Cookie来存储大量的有用数据。 我们在此之前已经看到了可以使用客户端的cookie存储各种数据,在Web应用程序这是非常有用的。这就导致了很多要保存数据的重要性和一些安全漏洞问题。 出于安全原因,Django有一个会话框架来处理Cookies。 会话用于抽象的接收和发送cookie,数据保存在服务器端(如数据库),而客户端的cookie只是有识别会话