Php 代码点火器闪存数据未清除

Php 代码点火器闪存数据未清除,php,codeigniter,Php,Codeigniter,我是codeigniter的新手,我正在创建一个创建和管理用户的项目。在这里,我使用flashdata显示临时消息,如“用户创建”等 我设置闪存数据的代码是 $this->session->set_flashdata('message', 'User Created.'); 在我看来,我称之为 $this->session->flashdata('message'); 我的问题是,当创建用户时,会显示flashdata,当我单击home链接时,fla

我是codeigniter的新手,我正在创建一个创建和管理用户的项目。在这里,我使用flashdata显示临时消息,如“用户创建”等

我设置闪存数据的代码是

       $this->session->set_flashdata('message', 'User Created.'); 
在我看来,我称之为

$this->session->flashdata('message'); 

我的问题是,当创建用户时,会显示flashdata,当我单击home链接时,flashdata仍然可用,但当我再次单击refresh/home时,它会消失。当我第一次点击主页链接时,我希望它被清除。有没有一种编码的方法

flashdata应该显示一次

它会在页面刷新时消失

因此,如果您将页面重定向到另一个页面,它应该可以工作

如果不刷新页面,可以通过jQuery进行刷新

说出你的div显示闪光灯:

<div id="flash-messages">Success Message</div>
成功消息
编写jQuery:

<script type="text/javascript">
$(function(){
  $("#flash-messages").click(function(){$(this).hide()});
});
</script>

$(函数(){
$(“#flash messages”)。单击(函数(){$(this.hide()});
});

用户创建后,您应该
重定向
。然后,当下次
单击
主页链接时,它将不会出现,请尝试此操作

$this->session->set_flashdata('message', 'User Created.'); 
redirect(base_url().'home.php');// you can change accordingly

Flashdata将仅可用于下一个服务器请求,然后自动清除。

if($user_created)
{
    $this->session->set_flashdata('success', 'User created!');
    redirect('login');
}
else
{
    redirect('register');
}

必须在
$this->session->set_flash('item','value')之后将页面重定向到的某处

例如:


通常开发人员在向同一页面提交数据时会出错。它们设置闪存数据,但忘记重定向。

您可以使用Ajax框架自动隐藏闪存消息。它们还包含所有闪存操作

你可以从这里得到更多的信息。

如果要清除控制器中的set_flash
或另一个视图文件中的set_flash
,则可以使用此简单代码

$this->session->set_flashdata('error', 'User not found...'); //create set_flash
取消设置设置闪烁

//echo "<pre>"; print_r($_SESSION); die; //for check 

if(isset($_SESSION['error'])){
    unset($_SESSION['error']);
}
//echo”“;打印(美元会话);死亡//核对
如果(isset($\u会话['error'])){
取消设置($_会话['error']);
}

Flashdata在每次访问应用程序时都会被清除。你们家的按钮上没挂阿贾克斯神奈根吗?谢谢大家。。。我没想到会有这样的反应。。。真的很兴奋。。我将更深入地研究php,所以这个网站就在这里……感觉很棒……使用jquery我可以设置任何时间间隔,使其像隐藏一样隐藏(时间间隔)??。。对吗谢谢…抱歉问这个。。。但是如何设置它呢?因为我不擅长jquery和所有…$(document).ready(function(){var refreshId=setInterval(function(){$(“#flash messages”).hide();},5000);});这是为了我。也有同样的问题。正在加载视图而不是重定向。仍然能够将值(即错误消息)传递到重定向。虽然这是一个解决方案,但我认为它不会直接回答用户关于加载视图与重定向的问题。即使我重定向,flash消息也不会消失。请帮忙。我重定向到同一页面{$this->Crud_model->insert_dept($deptdata);$this->session->set_flashdata('dept_created','depart has created..);重定向(base_url()。'Forget/settings');}否则{$this->session set_flashdata('dept_not_created','dept尚未创建..!');重定向(base_url().'Forget/settings');}
//echo "<pre>"; print_r($_SESSION); die; //for check 

if(isset($_SESSION['error'])){
    unset($_SESSION['error']);
}