检查用户是否登录ajax页面更改

2024-04-25

作为我正在构建的网络应用程序的一部分,我需要在用户更改页面时检查用户是否已登录。在普通的非ajax站点上,这很容易,因为我可以将PHP会话条件语句放在标头中,并且在每次页面更改时调用的标头将确定是否显示登录页面,但将其视为头文件仅在 ajax 应用程序中设置一次,即在初始加载时,我如何在用户发出 ajax 页面请求时检查会话是否仍然有效?由于我使用的是 pushState 和 popState,我知道我可以设置在 URL 更改时运行的条件,但我不知道如何编写检查代码以在发生这种情况时运行。

任何和所有的帮助表示赞赏。

Thanks.


您应该返回 false,以便您可以执行一些智能操作,例如将用户重定向到登录页面,或者更改您在问题中提到的标题,而不是使用die('false')

i.e.

if(!isset($_SESSION['valid_user'])) { 

    return false;
}

或者更好的是,将 json 对象返回到脚本并使用 jquery/javascript 更改标头。

$response = array();

if(!isset($_SESSION['valid_user'])) { 

    $response['logged_in'] = false;

} else {

    $response['logged_in'] = true;

}

// return to jquery for handling
return json_encode($response);

不管怎样,你说你正在构建一个网络应用程序,所以你可能想尝试处理事件而不是终止程序。

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

检查用户是否登录ajax页面更改 的相关文章

  • mysql 更新或插入多条记录(如果表中尚不存在)

    mysql 数据库中有一个名为 inventory item 的表 id product id 和 quantity 是表的列 id 是主键 在插入记录时自动生成 当用户提交要向表中插入多条记录的表单时 可以在 foreach 循环中收集所
  • SyntaxError: JSON.parse: JSON 数据第 1 行第 1 列出现意外字符

    我花了 6 个多小时在代码中查找异常或特殊字符 但我找不到 我检查了这里所有类似的消息 我正在发送带有放大弹出窗口的表格 首先 我使用内联弹出窗口打开表单 然后将所有输入发送到 main js 进行验证 所以 我只需要第三只眼 我有 ind
  • Codeigniter 如何清理输入?

    我正在构建一个 Codeigniter 应用程序 并且正在尽最大努力防止 SQL 注入 我正在使用 Active Record 方法来构建我的所有查询 我知道 Active Record 会自动清理输入 但我想知道到底清理到什么程度 它只是
  • 如何用php将文件内容转换为字节数组

    我想用PHP将上传的文件保存 插入 到数据库中 数据库字段的类型是varbinary 最后 我想要获得 VarBinary 输出 的内容 就像在 C 中读取文件然后将其存储在字节数组中并将数组插入到 VarBinary 中一样 我与数据库的
  • 如何将现场 prestashop 站点移至本地主机?

    我在将 PS 1 7 从服务器域传输到本地主机时遇到问题 我已按照 Prestashop 文档中的文件传输的所有步骤进行操作 我执行此步骤 1 将所有 prestashop 文件从服务器下载到我的 mac 并将其放入 mamp htdocs
  • 处理后显示订单中的产品自定义字段值

    在 woocommerce 上 我使用下面的代码在购物车和结帐时呈现一些产品自定义字段 add filter woocommerce get item data rendering meta field on cart and checko
  • 推送通知发送成功,但设备收不到(偶尔)

    从昨天开始 我一直遇到一些设备无法收到推送通知的问题 证书 设备令牌似乎是正确的 直到昨天 该设备才能成功接收推送通知 在服务器端 没有错误或连接拒绝 并且推送通知似乎每次都成功发送 但仍然有很多情况下设备无法正确接收推送 一些周边信息 我
  • 推送通知 Drupal 模块 - 删除设备(Web 服务)

    我已经开始使用这个模块 并且我已经成功注册设备 按照他的作者发布的说明进行操作 here http www danielhanold com story drupal 7 push notifications how to register
  • 如何确定 CSV 文件字段是制表符分隔还是逗号分隔?

    我试图确定 CSV 文件字段是制表符分隔还是逗号分隔 我需要 PHP 验证 我怎样才能确定这一点 现在回答这个问题已经太晚了 但希望它能对某人有所帮助 这是一个简单的函数 它将返回文件的分隔符 function getFileDelimit
  • 在表单提交时发送 div 的值

    我正在尝试提交一个包含几个不同输入的表单 这些输入都工作正常 然而 输入之一是文本区域 某种程度 我必须将其更改为内容可编辑的 div 主要是因为我创建了自己的粗体 斜体和下划线按钮 这些按钮不适用于普通文本区域 问题是提交时的表单没有将文
  • 如何在 PHP 中解密密码哈希?

    我需要解密密码 密码已加密password hash功能 password examplepassword crypted password hash password PASSWORD DEFAULT 现在 我们假设 crypted存储在
  • iOS 安全性将带有密码的数据发送至服务器或从服务器发送数据

    我正在构建一个应用程序 需要在服务器执行任何操作之前从用户设备发送密码以在服务器上进行身份验证 事情是这样的 用户的手机上有一个纯文本密码 该密码也在服务器中以 bcrypt 二进制文件的形式存在 用户想要从数据库中获取某些内容 因此用户通
  • Yii2:用户身份验证到底是如何工作的? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我不明白Authentication in Yii2 In Yii 1有一个身份类别 我们需要与authentication 方法和调
  • 每行仅显示 3 个 foreach 结果

    我的脚本如下 output table class products tr while info mysql fetch array data Outputs the image and other data output td img s
  • 为什么 Xampp 控制面板在启动时显示错误访问被拒绝 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我的 Xampp 控制面板遇到问题 当我尝试启动它时 它会弹出一条错误消息 错误 无法创建文件 C xampp xampp control
  • AMQPRuntimeException:读取数据时出错。收到 0 而不是预期的 7 字节

    它曾经有效 但现在不再有效了 我正在使用 php amqplib 和 RabbitMQ 当我尝试创建新的 AMQP 连接时 connection new AMQPConnection localhost 5672 username pass
  • 将 PHP 错误处理程序限制为特定命名空间

    PHP 有没有办法只为特定的命名空间设置错误处理程序 我正在构建一个小型框架 我希望能够通过设置自定义错误处理程序并抛出异常来尝试捕获其名称空间内的所有错误 警告 通知消息 在此特定名称空间之外触发的错误应该以常规方式表现 用PHP可以完成
  • 使用 php 在没有“manage_pages”权限的情况下发布到 Facebook 页面

    我有一个包含博客文章的网站 我们需要自动将博客发布到 Facebook 页面 目前我可以发布到我的时间线 但我无法发布到 Facebook 页面 我在谷歌搜索过 许多代码说我们需要manage pages权限 我的应用程序 Facebook
  • PHP 函数可以接受无限数量的参数吗? [复制]

    这个问题在这里已经有答案了 在 PHP 中有类似的函数unset 支持我们向它们抛出的任意数量的参数 我想创建一个类似的函数 它能够接受任意数量的参数并处理所有参数 任何想法 如何做到这一点 在 PHP 中 使用该函数func get ar
  • 如何从symfony2中的现有表生成实体?

    我有带有一些字段的表 my table 我想在 MyBundle 中使用 my table 生成实体 但我不想重新创建 MyBundle 中的所有实体 我怎样才能做到这一点 这是你可以做到的方法 第一步 要求Doctrine自省数据库并生成

随机推荐

  • python 2.7编码解码

    我有一个涉及编码 解码的问题 我从文件中读取文本并将其与数据库 Postgres 中的文本进行比较 比较在两个列表内完成 从文件中我得到 jo 的 jo x9a 从数据库中我得到相同值的 jo xc5 xa1 common a for a
  • 在过滤器Javascript中添加两个条件

    我试图在过滤器中添加两个条件 但只有一个有效 第一个条件检查单词之间是否有空格 第二个条件检查words length 是否大于给定的最小长度 如果字符串是 hello world 然后我需要在分割它时得到 hello world 相反 我
  • 使用 jQuery 替换 XMLHttpRequest

    我对 JavaScript 库还很陌生 我想用 jQuery 替换我当前的代码 我当前的代码如下所示 var req function createRequest var key document getElementById key va
  • 这是 Oracle 可能的错误还是我遗漏了什么?

    数据库是 Oracle 10 2 0 1 0 64 位 在 Red Hat Enterprise Linux ES 第 4 版 Nahant 更新 8 上运行 在 SQL Plus 中 以下代码可以完美运行 var comment id n
  • 即使在客户端设置 Access-Control-Allow-Origin 或其他 Access-Control-Allow-* 标头后,仍会出现 CORS 错误

    我有一个使用以下命令生成的 Vue 应用程序webpack simple选项 我正在尝试做一个GET请求https api forismatic com api 1 0 method getQuote format json lang en
  • 如何在 R 中设置一个包含自身的类(对于树)?

    我需要一个可能包含也可能不包含自身的类 以用作 R 中的树 每个节点都有 Side Analytical Matrix MaxChi2 P 和 Sons 也是节点类型 第一次创建节点时 我需要子节点为空或 NULL 但后来我创建了它们并将它
  • 渐进式 JPEG 的完整缩略图需要多少字节?

    我正在尝试构建一个上传器 它分两步上传渐进式文件 上传创建缩略图所需的最小字节数 0 10 上传缩略图的其余字节 11 100 我希望这样做可以更早地提供缩略图 而无需上传单独的缩略图 拍摄使用以下命令创建的图像 3426398 字节 jp
  • 为什么使用 Dijkstra 算法而不是最佳(最便宜)优先搜索?

    从我到目前为止所读到的来看 这最佳优先搜索 https en wikipedia org wiki Best first search在找到到达目标的最短路径方面似乎更快 因为 Dijkstra 算法在遍历图时必须放松所有节点 是什么让 D
  • Ajax请求成功但结果为空

    我正在构建一个 Google Chrome 浏览器扩展 它使用 ajax请求将数据从网页发送到我的服务器 当前使用本地主机托管 这content script js在网页上下文中执行的文件 有关内容脚本的更多信息 http develope
  • 理想的 Android Studio gitignore 文件

    我最近创建了一个 Android 项目 但这是我第一次使用 Android Studio 我将该项目放在 Git 文件夹中 以便能够通过 Git 与其他开发人员远程工作 我发现默认的 gitignore 文件包含以下内容 iml gradl
  • RESTful API 设计:更新 (PUT) 中不可更改的数据是否应该是可选的?

    我正在实现 RESTful API 并且我不确定对于无法更改的数据的存在是否存在 社区接受 行为 例如 在我的 API 中 有一个 文件 资源 该资源在创建时包含许多在创建后无法修改的字段 例如文件的二进制数据以及与其关联的一些元数据 此外
  • 如何让mysql每隔1小时自动运行一次查询?

    我的数据库中有整数值 我想随着时间的流逝而减少它 我该怎么做 您不需要减少该值 您可以只存储基础值并创建一个视图来快速计算该值 像这样的东西 create table hourly base value int starttime date
  • 我在 Golem Shiny 应用程序中使用 {future} 和 {furrr} 函数时收到错误,它来自哪里?

    我目前正在开发一个名为 package name 的 Golem Shiny 应用程序 这是我的要求 我创建的一些函数需要使用来自 furrr and future 包 但是 每当我尝试运行它们时 都会收到以下错误 错误 没有名为 pack
  • jgit - 基于文件扩展名的 git diff

    我正在使用 JGit API https www eclipse org jgit https www eclipse org jgit 访问 git 存储库 在 git 存储库中 我还存储 txt 文件和其他文件格式 我遇到了一个要求 我
  • NetBeans - 将所有内容部署在一个 jar 中[重复]

    这个问题在这里已经有答案了 可能的重复 将外部库放入 JAR 中 https stackoverflow com questions 2034180 put external library to the jar 我有 NetBeans 6
  • 反馈两个进程的stdin和stdout

    我有两个进程通过标准输入和标准输出相互连接 假设我有进程 A 和进程 B B 的标准输出需要输入到 A 的标准输入中 A 的标准输出需要输入到进程 B 的标准输出中 是否有一种简单的方法可以用简单的命令来表达这种关系 或者是否有一个基本的
  • 如何摆脱 Firefox 中用作链接的边框和图像?

    我认为奇怪的问题更多的是我不确定它叫什么 但我有一个包含在链接中的 img example li a href link img a li Now I have the css border rules all to 0 So their
  • 使用 JNDI 在 Tomcat 上设置 WMQ V8 连接工厂

    目前 我们的 Tomcat 配置 JNDI 是基于当前有效的此建议 如何使用 JMS 和 JNDI 连接到 Websphere MQ MQ 系列 服务器 http wiki apache org tomcat HowTo How do I
  • Bitbucket 和 Azure DevOps 之间的集成

    我的要求是我想将我的 Bitbucket 存储库与 Azure DevOps CI 服务器集成 以便一旦我将代码推送到 bitbucket 存储库中 我的管道就会在 Azure DevOps CI 服务器中触发 因为我已经在 Bitbuck
  • 检查用户是否登录ajax页面更改

    作为我正在构建的网络应用程序的一部分 我需要在用户更改页面时检查用户是否已登录 在普通的非ajax站点上 这很容易 因为我可以将PHP会话条件语句放在标头中 并且在每次页面更改时调用的标头将确定是否显示登录页面 但将其视为头文件仅在 aja