注册后无法将闪存数据应用于页面

2024-04-06

所以我试图从登录屏幕进入管理屏幕,我设置了闪存数据,这样我就可以告诉用户他们是否已登录,并检查是否有多个用户或密码错误,它会显示抱歉未登录。 这是我的控制器。

public function insertInformation(){
                $this->load->helper('form');
                $this->load->library('form_validation');

                $this->form_validation->set_rules('name', 'Name', 'required');
                $this->form_validation->set_rules('email', 'Email', 'required|valid_email|callback_check_if_email_exists');
                $this->form_validation->set_rules('phone', 'Phone', 'required');
                $this->form_validation->set_rules('password', 'Password', 'required|min_length[4]|max_length[32]');
                $this->form_validation->set_rules('password_confirm', 'Password Confirm', 'required|matches[password]');


                if ($this->form_validation->run() == FALSE){
                $this->load->view('header_view');
                $this->load->view('login_view');
                $this->load->view('footer_view');
                }else{

                    $data =  array(
                    'name' => $this->input->post('name'),
                    'email' => $this->input->post('email'),
                    'phone' => $this->input->post('phone'),
                    'password' => $this->input->post('password')

                );


                    $this->load->model('main_page');
                  $user_id = $this->main_page->storeRegisterInfo($data);

                    if($user_id){
                        $user_data = array(
                            'user_id' =>$user_id,
                            'name'=> $name,
                            'logged_in' => true
                        );

                        $this->session->set_userdata($user_data);
                        $this->session->set_flashdata('login_sucess','you are now loggedin');
                        $this->Admin();
                    }else{
                        $this->session->set_flashdata('login_failed','you are not loggedin');
                        $this->login();
                    }

                }




        }

这是插入数据的模式,我不确定如何检查用户 ID 是否存在以及检查用户是否具有有效的登录信息。

public function storeRegisterInfo($data){

            $insert = $this->db->insert('new_users',$data);
            $result = $this->db->get('new_users');
            if($result ->num_rows()== 1){
                return $result->row(0)->id;
            }else{
                return false;
            }


        }

最后,对于登录功能中的视图,它是这样的。基本上这是一个注册表单,但我到处都错误地写了登录名,所以请不要混淆。

<p class="bg-danger">

<?php if($this->session->flashdata('login_failed')): ?>
<?php echo $this->session->flashdata('login_failed'); ?>

<?php endif; ?>


</p>

对于管理员来说也是如此。

<p class="bg-success">

<?php if($this->session->flashdata('login_success')): ?>
<?php echo $this->session->flashdata('login_success'); ?>

<?php endif; ?>


</p>


<h1>hello</h1>

所以我无法让闪存数据工作,并且无法识别用户是否已经存在或写入了错误的密码。


设置Flash数据后重定向页面

redirect('controllerNmae/Method');

EDIT 01

In view

<?php
    if(!empty($this->session->flashdata('login_sucess')))
    {
        echo $this->session->flashdata('login_sucess');
    }

    if(!empty($this->session->flashdata('login_failed')))
    {
        echo $this->session->flashdata('login_failed');
    }
?>

or

<?php
    if(!empty($this->session->flashdata('login_sucess')))
    {
        ?>
        <script>
            alert('<?php $this->session->flashdata('login_sucess'); ?>');
        </script>
    <?
    }

     if(!empty($this->session->flashdata('login_failed')))
    {
        ?>
        <script>
            alert('<?php $this->session->flashdata('login_failed'); ?>');
        </script>
    <?
    }
?>

Tip:使用这个库警报JS http://alertifyjs.com/。它提供了良好的用户体验
Ex

<script>
   alertify.success('<?php $this->session->flashdata('login_sucess'); ?>');
</script>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

注册后无法将闪存数据应用于页面 的相关文章

  • 如何用javascript正确读取php cookies

    考虑这个 php 和 javascript 代码 然后我在控制台中看到的是 utma 111872281 291759993 1444771465 1445374822 1445436904 4 utmz 111872281 1444771
  • 如何在 HTML / Javascript 页面中插入 PHP 下拉列表

    好吧 这是我的第二篇文章 请接受我是一个完全的新手 愿意学习 花了很多时间在各个网站上寻找答案 而且我几乎已经到达了我需要到达的地方 至少在这一点上 我有一个网页 其中有许多 javascript 函数 这些函数一起使用 google 地图
  • Azure 上的“phpcomposer.phar install”出现“无法终止进程”错误

    我正在尝试将我的 Symfony 2 应用程序部署到 Microsoft Azure 网站云 为此 我按照本指南中的步骤操作http symfony com doc current cookbook deployment azure web
  • 如何在html中制作多行类型的文本框?

  • 如何从字符串中删除所有数字?

    我想删除字符串 0 9 中的所有数字 我写了这段有效的代码 words preg replace 0 words remove numbers words preg replace 1 words remove numbers words
  • 如何在 codeigniter 查询中使用 FIND_IN_SET?

    array array classesID gt 6 this gt db gt select gt from this gt table name gt where array gt order by this gt order by q
  • PHP cURL 在本地工作,在 AWS 服务器上出现错误 77

    最新更新 脚本作为管理员用户通过 SSH shell 作为 php script php 成功运行 当由 nginx 用户运行时 curl 命令无法执行 https 请求 所以我猜测这是nginx用户无法正确使用curl的问题 我已经检查了
  • 在 PHP 中模拟 jQuery.ajax 请求

    我必须在 PHP 中模拟 AJAX 请求 就像在 jQuery 中一样 我当前的代码在这里 原始 AJAX 调用 不得修改 ajax type POST url someFile php data data success function
  • 服务器上的 Rails 会话

    我想让一些 Rails 应用程序在不同的服务器上共享同一个会话 我可以在同一服务器内完成此操作 但不知道是否可以在不同服务器上共享 有人已经做过或者知道怎么做吗 Thanks Use the 数据库会话存储 https github com
  • 来自本地 XML 的模拟 SoapClient 响应

    我想用文件中的 XML 来模拟 SoapClient 的响应 我如何创建一个 stdClass 对象 就像 SoapClient 从文件返回一样 客户端已经包装了 SoapClient 因此可以轻松模拟响应 我的模拟是这样的 soapCli
  • PHP、jQuery 和 Ajax 调用乱序

    我正在使用 jQuery 进行 Ajax 调用 我有 x 数量的 Ajax 调用附加到 div 这些 Ajax 加载请求是由 PHP foreach 循环生成的 问题是它们渲染的顺序不正确 它们被设置在数组中
  • Doctrine 1 和 Symfony 1 的多个主键?

    我已经知道在 Symfony 1 和 Doctrine 1 中不可能使用多个主键 但是你们知道有什么好的解决方法吗 除了多对多关系之外 原则 1 不适用于多列上的主键 但如果你想使用多对多关系 请像这样使用 BlogPost columns
  • 选取散列第 N 个元素的最快方法

    我有一个大哈希表 带有字符串索引的数组 并正在寻找一个函数quickly从中选取第一个 理想情况下也是第 N 个 元素 array shift and reset 对于我的需求来说太慢了 UPDATE 我也不是在寻找基于引用的解决方案 该函
  • PHP:在脚本完成之前获取输出

    我有一个名为 data php 的脚本 如下所示 do some stuff echo result do some other stuff eg database operations 我需要在另一个脚本中使用 data php 的输出
  • PHP 错误:“无法通过引用传递参数 2”

    我只是需要有关这个 PHP 错误的帮助 我不太明白 致命错误 无法在第 13 行 web stud openup inactivatesession php 中通过引用传递参数 2
  • HTML 代码中的 PHP [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我用 HTML 代码编写了 PHP div div 但这出现在输出页面中 else print 我怎样才能让PHP执行 你的文件有一个 p
  • 显式删除会话cookie会产生什么影响?

    我使用 php session 来维护用户的会话 Session 在登录后创建 在注销或超时后销毁 我需要管理面板中的一个选项来强制注销任何用户 如果他在网站上处于活动状态 我怎样才能做到这一点 我正在考虑删除临时会话文件 这应该有效地破坏
  • 如何在 Carbon Laravel 中添加日期和另一个日期?

    在我的 laravel 项目中 我想将日期时间增加到前一个日期时间 这是我的代码 expire order 0 gt expire date new Carbon now gt addMonths 6 这两行的结果是 2018 01 28
  • 如何在数据列表 HTML PHP 中设置选择

    您好我想知道是否有一种方法可以在数据列表中设置选定的值 我想要这样的东西
  • 如何在 PHP 中从字符串类名实例化? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 如何创建返回方法名称的新实例 不幸的是我收到这个错误 错误 类名必须是有效的对象或字符串 这是我的代码 class Foo public f

随机推荐

  • 线程本地存储开销

    假设有一些不可重入函数使用全局变量 int i void foo void modify i 然后 我想在多线程代码中使用这个函数 所以我可以这样更改代码 void foo int i modify i 或者 通过使用 gcc thread
  • Java Swing - Repaint() 无法正常工作

    我从以下位置获取程序这个话题 https stackoverflow com questions 8693342 drawing a simple line graph in java 我尝试在实时模式下编辑点 我将 MouseMotion
  • API 和 ABI 之间的区别

    我是 Linux 系统编程新手 在阅读时遇到了 API 和 ABILinux系统编程 API定义 API 定义了接口 通过这些接口 一个软件可以进行通信 与源级别的另一个 ABI的定义 而 API 定义了源 接口 ABI 定义了 两者之间的
  • Xpath 选择包含特定列表子集的元素

    再会 假设以下 XML
  • “ps aux”有效,但“ps -aux”无效

    这似乎是一个愚蠢的问题 但我一直无法找到明确的答案 这个网站 http www linfo org ps html表明破折号是可选的 ps aux 然而 ps aux有效但是ps aux引发错误no user named x 有什么想法可能
  • 无法解析方法“registerForActivityResult”

    我正在构建一个自定义电容器插件来获取用户的电话号码 我将电容器 3 与 Ionic 6 一起使用 我找到了一个未被弃用的解决方案 并且是最近才获取用户的电话号码 这是我获取电话号码的代码 private void requestHint H
  • Chrome在浏览器后退按钮上再次执行所有JS

    我正在开发一个网络应用程序 我编写了一些 JS 脚本 以便在文档就绪时执行 但是在 Chrome 中 当我们单击后退按钮并返回到上一页时 它会再次执行所有 js 脚本 但是当我在 Firefox 上使用相同的方法时 它不会执行 JS 我在页
  • R 中的子列表命名

    假设我有一个包含 3 个子列表的列表 每个子列表携带 3 个数据帧 它看起来像这样 数据在最后 然后假设我有 2 个向量 j lt seq 10 20 length out 3 v lt seq 0 1 length out 3 我想创建一
  • 我应该将 Visual Studio 调试器附加到哪个进程来调试 Kestrel 应用程序?

    我正在启动命令行并使用运行我的应用程序dotnet run命令 这将启动 Kestrel 并显示我的应用程序 我应该如何确定要附加调试器的进程 以便可以调试 Kestrel 现在托管的网站 我特别需要能够这样做 这意味着我不能使用标准 F5
  • 如何在 Selenium 中结合隐式和显式超时?

    我正在使用带有隐式超时的 Selenium ChromeDriver driver Manage Timeouts ImplicitWait TimeSpan FromSeconds 5 在我的一项测试中 我想用明确的超时来覆盖它 在读取属
  • 类型变量和局部抽象类型有什么区别?

    我试图理解的目的局部抽象类型在 OCaml 中 局部抽象类型与类型变量有何不同 看来他们有相同的行为 Type variable let f x a a x val f a gt a
  • Flutter 升级后无法运行应用版本解决失败

    Nope 这个答案不起作用 https stackoverflow com questions 51375674 error after running flutter upgrade这次对我来说 My flutter doctor v F
  • 选择最新的作为分组依据(或其他解决方案...)的一部分

    我有一个表 其中重要的列如下所示 username source description 我的目标是获取用户 源组合唯一的 10 条最新记录 从以下数据来看 1 katie facebook loved it 2 katie faceboo
  • 在模板中使用 django 查询集会访问数据库吗?

    当针对非上下文值调用时 模板值标签是否会强制 django 访问数据库 例如 request user username 是显示当前登录用户的用户名的调用 然而 像 request user someobject set all 会将 FK
  • 元素的屏幕坐标,通过 Javascript

    我试图获取浏览器窗口中元素的屏幕坐标 即相对于屏幕的左上角 很容易获取窗口的大小和位置 screenX screenY 也很容易 使用 jQuery 获取元素的偏移量 element offset left 但是 我需要知道从元素一直到屏幕
  • 将 Android apk 与其他可执行文件一起打包

    作为先前问题的后续 Android ioctl root权限和使用 https stackoverflow com questions 6983156 android ioctl root permissions and usage 698
  • X-Frame-Options 不起作用 IIS web.config

    我们的网站目前无法免受点击劫持 因此我进入了网络配置并添加了
  • 使用 django 中的 cpanel 创建的电子邮件

    我在我的 cpanel 上创建了一个电子邮件 ID 我想在 django 中使用它 至于gmail 我们写道 EMAIL BACKEND django core mail backends smtp EmailBackend EMAIL H
  • Spark JDBC 到 DashDB (DB2) 并出现 CLOB 错误

    我正在努力将我的 Spark 应用程序连接到 DashDB 目前 我可以很好地加载我的数据 但是 我无法将 DataFrame 保存到 DashDB 任何见解都会有所帮助 var jdbcSets sqlContext read forma
  • 注册后无法将闪存数据应用于页面

    所以我试图从登录屏幕进入管理屏幕 我设置了闪存数据 这样我就可以告诉用户他们是否已登录 并检查是否有多个用户或密码错误 它会显示抱歉未登录 这是我的控制器 public function insertInformation this gt