重定向到 codeigniter 中的引用网址

2024-01-01

在我的项目的消息传递系统中,当您收到用户发来的消息时,您会收到一封电子邮件警报,说另一个用户已发送消息以查看该消息,请单击此处(即消息的网址)因此,如果用户未登录系统他被重定向到登录页面,登录后应该返回到引用网址。我在核心文件夹中创建了一个basecontoller,并扩展了CI_controller,验证代码如下。

function authenticate($type = 'user')
    {
        if($type == 'user')
        {
            if($this->user_id)
            {
                // user is logged in. check for permissions now
            }
            else
            {
                // user isnt logged in. store the referrer URL in a var.
                if(isset($_SERVER['HTTP_REFERER']))
                {
                    $redirect_to = str_replace(base_url(),'',$_SERVER['HTTP_REFERER']);
                }
                else
                {
                    $redirect_to = $this->uri->uri_string();
                }            

                redirect('user/login?redirect='.$redirect_to);
                exit;
            }
        }

        if($type == 'admin')
        {
            if($this->session->userdata('admin_id') && $this->session->userdata('user_type') ==5)
            {
                // Admin is logged in
            }
            else
            {
                redirect('admin/login');
                exit;
            }
        }
    }

引用网址为“http://example.com/project/pm/view_conversation?id=11” 现在的问题是我在 view_conversation 之前获取引用网址,但无法获取 id 部分。

有什么建议吗?

谢谢。


这可以帮助:

CI 2+ https://www.codeigniter.com/userguide2/libraries/user_agent.html https://www.codeigniter.com/userguide2/libraries/user_agent.html

CI 3+ http://www.codeigniter.com/userguide3/libraries/user_agent.html http://www.codeigniter.com/userguide3/libraries/user_agent.html

以下解决方案适用于 Codeigniter 版本 3

$this->load->library('user_agent');
if ($this->agent->is_referral())
{
    echo $this->agent->referrer();
}

更新:有关如何使用相同的 user_agent 库获取引荐来源网址信息的有趣且有用的信息
https://www.tutorialandexample.com/user-agent-class/ https://www.tutorialandexample.com/user-agent-class/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

重定向到 codeigniter 中的引用网址 的相关文章

  • 如何组织和管理ACL?

    采取Zend ACL http framework zend com manual en zend acl html作为我的例子 我想知道应该如何为项目组织它 当然 这个例子非常漂亮和简洁 但真实的网站要复杂得多 acl new Zend
  • HTML 上传 MAX_FILE_SIZE 似乎不起作用

    我想知道隐藏字段是如何命名的MAX FILE SIZE应该工作吗
  • 如何将 gettext 字典中的术语输入 JavaScript?

    我正在尝试使用 php 和 javascript jquery 开发一个支持多种语言的网站 我正在尝试获得以下东西 高效 我需要尽可能减少这个操作的后端处理 可扩展 向翻译添加新字符串必须简单实用 问题是 我的 javascript 代码正
  • 使用 try {} catch {} 与 if {} else {} 相比有何优势

    我正在从 php 中的普通 mysql 切换到 PDO 并且我注意到测试错误的常见方法是使用 try catch 组合而不是 if else 组合 该方法的优点是什么 我可以使用一个 try catch 块而不是多个嵌套的 if else
  • 向 Laravel 的 Mailer 添加新的传输驱动程序

    我需要向 Laravel 的邮件包添加一个新的传输驱动程序 以便我可以通过默认情况下不支持的外部服务 Mailjet 发送电子邮件 编写传输驱动程序不会成为问题 但我找不到一种方法来连接并添加新的驱动程序 以便我可以继续正常使用 Larav
  • dayname(curdate()) 不适用于 codeigniter php

    此 sql 在 phpmyadmin 中有效 但在 codeigniter php 中无效 function getProgramsHomepage data array this gt db gt select p name p star
  • 从 CSV 到 MySQL 的换行问题

    我正在将 csv 文件导入 MySQL 除了文件中的换行符之外 一切正常 我的 csv 行之一如下所示 42 E A R Classic Earplugs ear images ear classic jpg 5 Proven size s
  • 我应该存储密码的哈希值吗?

    用户系统和密码 我正在查看 MD5 内容 我想知道密码的正常 良好做法是什么 现在 我认为人们对密码进行超级加密并存储哈希值 如果是这样 密码检查如何工作 我只是让输入的密码再次经过加密过程 然后用存储的哈希值检查哈希值 对吗 这个问题可能
  • Laravel 异常队列最大尝试次数超出

    我创建了一个应用程序来向多个用户发送电子邮件 但在处理大量收件人时遇到问题 该错误出现在failed jobs table Illuminate Queue MaxAttemptsExceededException App Jobs ESe
  • PHP 邮件结果错误:“标头丢失”

    我已经使用 php 邮件表单有一段时间了 现在它无法在新网站上运行 出现以下错误结果 PHP 警告 mail function mail sendmail from 未在 php ini 中设置 或第 16 行 E home mypagef
  • PHP - 从动态添加的 html 表格行获取输入

    我在这里设置了以下小提琴Fiddle https jsfiddle net fqugd7vL 7 如您所见 我可以通过单击 添加行 按钮来添加输入 添加的所有输入都有唯一的 ID 和名称 问题是 我不能只做类似的事情 actionInput
  • 使用 php 和 mysql 计算日期差(以小时为单位)

    我如何使用 php 和 mysql 找到以小时为单位的日期差异 Use TIMEDIFF http dev mysql com doc refman 5 1 en date and time functions html function
  • 不能简单地使用 PostgreSQL 表名(“关系不存在”)

    我正在尝试运行以下 PHP 脚本来执行简单的数据库查询 db host localhost db name showfinder username user password password dbconn pg connect host
  • 逗号分隔的字符串到数组

    我正在寻找采用单个变量的最简单方法 例如 variable left middle right 并将其写入array 在逗号处分开 array explode variable
  • WooCommerce:返回特定类别中所有产品 ID 的函数

    我认为问题的标题是相当不言自明的 但要详细说明 我正在尝试在 Woocommerce 中制作自定义类别页面 我需要的是返回特定类别中的所有产品 ID 我见过这个帖子 https stackoverflow com questions 210
  • 按正确的顺序在字符串数组中查找常见字符

    我花了几天时间研究一个函数 以正确的顺序获取字符串数组中的常见字符 以创建通配符 这是一个解释我的问题的例子 我做了大约3个函数 但是当每个字母的绝对位置不同时 我总是遇到一个错误 我们假设 是 通配符 Array 0 gt 48ca135
  • laravel 模型保存后、保存前等回调

    Laravel 中是否有回调 例如 afterSave beforeSave etc 我进行了搜索 但一无所获 如果没有这样的事情 实施它的最佳方法是什么 Thanks 实现保存前后回调以扩展的最佳方法save 功能 这是一个简单的例子 c
  • 将 rel="nofollow" 添加到 WordPress 帖子中的所有链接

    我想将 rel nofollow 添加到我的 WordPress 帖子中的所有链接 并且我希望能够拥有一个不会获得 nofollow 的链接列表 我已经尝试了很多 但我无法正确完成 因为我真的不能很好地理解正则表达式 所以我有字符串 tex
  • 如何配置 nginx 重写规则以使 CakePHP 在 CentOS 上运行?

    大家好 请帮帮我 我正在尝试在运行 Nginx 和 Fact CGI 的 Centos 服务器上设置 cakephp 环境 我已经在服务器上运行了一个 WordPress 站点和一个 phpmyadmin 站点 因此我已经正确配置了 PHP
  • 将 #RRGGBB 十六进制值转换为 #AARRGGBB

    414141 与 AARRGGBB 的值是什么 52b531 又如何 我如何使用 PHP 转换它 Regards 奔腾10 AA 是 Alpha 通道 直接转换是将 AA 设置为 FF 以使其完全不透明 414141 becomes FF4

随机推荐

  • 如何在不修改 jquery.validate.unobtrusive.min.js 的情况下重写 JQuery unobtrusive 方法?

    我想重写 jquery validate unobtrusive js 中的 onErrors 方法 以将错误消息显示为 html 元素的超链接 但是 我不想更改 jquery validate unobtrusive js 中的方法 因为
  • VB.NET 中的十六进制到 8 位无符号数组

    我有一个十六进制值 07A5953EE7592CE8871EE287F9C0A5FBC2BB43695589D95E76A4A9D37019C8 我想将其转换为字节数组 NET 3 5 中是否有一个内置函数可以完成这项工作 或者我是否需要编
  • 有没有办法为我的基于平台的Python应用程序提供条件requirements.txt文件?

    我编写了一个与 Linux 和 Windows 平台兼容的 python 应用程序 然而有一个问题 我需要的 Windows 的 python 软件包之一与 Linux 不兼容 幸运的是 还有另一个软件包可以在 Linux 上提供相同的功能
  • 如果 char 数组是 Java 中的对象,为什么打印它不显示其哈希码?

    打印 char 数组不显示哈希码 class IntChararrayTest public static void main String args int intArray 0 1 2 char charArray a b c Syst
  • 有 BOINC 编程经验吗?

    我被 BOINC 吸引是因为我的一个小项目 我听说过 BOINC 但没有太多了解它的工作原理 主要是因为我现在专注于其他优先事项 我想知道的是 你们中是否有人真正尝试过为 BOINC 编程并让程序在分布式计算机网络上运行 我特别对以下问题感
  • Kotlin:什么情况下会发生隐式转换?

    我是 Kotlin 的初学者 我最熟悉Python 刚刚读完基础Java教程https docs oracle com javase tutorial java index html https docs oracle com javase
  • 可以为 jQuery 前置添加动画吗?

    我在单击按钮时将一些数据添加到我的页面中 而不是立即填充到页面上 我想知道是否有一种方法可以对数据进行动画处理prepend using slideToggle或 CSS 动画 这是我当前的脚本 var data data html var
  • 为什么Android API中有这么多的浮动?

    Java 中默认的浮点类型是 double 如果你硬编码一个常量 比如2 5在你的程序中 Java会自动将其变为双精度 当您对浮点数或整数执行可能受益于更高精度的操作时 该类型将 提升 为双精度 但在 Android API 中 从音量到矩
  • 以内容长度分隔的消息正文过早结束(预期:

    我正在尝试在 apache httpclient 的帮助下获取 HTTP 响应 我成功获取标头 但当我尝试获取内容时它会引发异常 例外是 org apache http ConnectionClosedException Premature
  • (xcode 5) ibtool 失败,退出代码为 255

    有人能解决这个问题吗 我看过其他答案 但似乎没有一个对我有用 我可以正常运行其他项目 但我当前的项目因上述错误而失败 我想不出明显的原因 Clean 运行正常 没有代码错误 构建项目会导致此问题 我正在运行 xcode 5 我尝试重新安装模
  • Hadoop 无法完成作业,因为“设备上没有剩余空间”

    我正在尝试运行一个非常简单的 hadoop 作业 它是经典 wordCount 的修改版 它不是对单词进行计数 而是对文件中的行进行计数 我想用它来清理一堆我知道有重复的大日志文件 每个大约 70GB 每一行都是一个 记录 因此我感兴趣的是
  • 为什么使用 IList 或 List?

    我知道已经有很多关于此的帖子 但它仍然让我感到困惑 为什么要传入像 IList 这样的接口并返回像 IList 这样的接口而不是具体列表 我读了很多帖子 说这如何使以后更改实现变得更容易 但我只是不完全明白它是如何工作的 说一下我是否有这个
  • 使用请求负载模拟 HTTP 请求和响应

    我使用以下代码来模拟 HTTP 请求和响应对象节点模拟http https github com howardabrams node mocks http var request httpMocks createRequest method
  • 在 Rails 应用程序中启用 2 个不同的模型与同一张表对话

    我遇到了一些集成问题 我有两个模型需要映射 以便它们能够与同一张表对话 因此 一个模型具有一些映射到表中相应列的属性 对于另一个模型也是如此 我听说过别名 这是一种可以使用的技术 如有帮助 将不胜感激 谢谢 您创建两个模型并定义相同的 ta
  • 如何将 Sass 和 CSS 模块与 create-react-app 一起使用?

    我正在使用 FileName module scss 来设计我的反应元素 如下所示 this is my component import React from react import Aux from hoc Aux import cl
  • 我从未听说过的 fileinfo 和 mime 类型

    我对哑剧类型并不陌生 但这很奇怪 通常 文本文件会被认为是文本 纯 mime 但现在 在实现 fileinfo 之后 这种类型的文件现在被认为是 text x pascal 我有点担心 因为我需要确保在允许用户上传之前设置正确的 mime
  • 如何在 ngGridEventScroll 上使用页面滚动?

    使用ag Grid v2 X 我试图开发一个网格 当页面滚动 不是网格滚动 到达底部时加载更多数据 通过搜索类似的问题 我找到了解决方案第一个问题 ngGrid 必须具有动态高度 所以我做了这个 ngViewport height auto
  • “SELECT COUNT(column)”比“SELECT COUNT(*)”更快/更慢吗? [复制]

    这个问题在这里已经有答案了 我在 MSSQL2008 中运行这样的查询 select count from t1 inner join t2 on t1 id t2 t1 id inner join t3 on t1 id t3 t1 id
  • C++中的make_heap是如何实现复杂度为3N的?

    我想知道C 中make heap的算法是什么 复杂度为3 N 我能想到的通过插入元素来创建堆的唯一方法的复杂度为 O N Log N 多谢 您将堆表示为数组 下面的两个元素i 第一个元素位于位置2i 1 and 2i 2 如果数组有n然后
  • 重定向到 codeigniter 中的引用网址

    在我的项目的消息传递系统中 当您收到用户发来的消息时 您会收到一封电子邮件警报 说另一个用户已发送消息以查看该消息 请单击此处 即消息的网址 因此 如果用户未登录系统他被重定向到登录页面 登录后应该返回到引用网址 我在核心文件夹中创建了一个