使用 LightOpenID 登录/注销用户状态

2023-12-11

我正在尝试在我的网站上使用 LightOpenId 来登录/注销用户。这工作正常,但我的问题是“如何跟踪用户登录/注销状态并采取相应的操作”。

我希望用户仅在登录时访问我的网站功能,并在用户注销时重定向到登录页面。

提前致谢。


你的问题实际上与OpenID无关。

OpenID 是一种身份验证协议,这意味着它只检查用户是否确实是他所声称的人,就像要求密码进行检查一样。它与您的用户登录或注销无关。

为了跟踪用户的会话,您需要使用会话。例如,验证后:

<?php
if($openid->validate()) {
    // User has logged in
    $_SESSION['identity'] = $openid->identity;
}
?>

然后,当您想检查您的用户是否已登录(以及他是谁)时:

<?php
if(isset($_SESSION['identity'])) {
    echo 'User is logged in as ' . $_SESSION['identity'];
} else {
    echo 'User isn\'t logged in';
}
?>

为了完成,注销时:

<?php
unset($_SESSION['identity']);
session_destroy();
?>

如果您不知道如何使用session,可以查找更多信息在手册中.

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

使用 LightOpenID 登录/注销用户状态 的相关文章

  • 如何使用 PHP 正确添加跨站请求伪造 (CSRF) 令牌

    我正在尝试为我网站上的表单添加一些安全性 其中一个表单使用 AJAX 另一个表单是简单的 联系我们 表单 我正在尝试添加 CSRF 令牌 我遇到的问题是令牌有时只显示在 HTML 值 中 其余时间 该值为空 这是我在 AJAX 表单上使用的
  • WordPress 中的 add_action 函数

    嗯 我正在学习创建一个 WordPress 插件 我下载了一个并阅读了代码 然后我看到了这个 我假设 foo 是它将添加操作的标签 但是 array 到底是做什么的呢 add action foo array foo1 foo2 我在看ht
  • ORDER BY 字段内的 MySQL 子查询。 (没有内连接)

    有很多与此相关的问题 但都具有使用内部联接的相同答案 这 我认为 在这里是不可能的 如果我错了请告诉我 我现在正在做的是调用两个不同的 mysql 查询来获取结果 它工作完美 db gt query SELECT FROM meta WHE
  • Zend Framework 生成唯一的字符串

    我想生成一个唯一的 4 6 个字符长的字母数字字符串 以便与每个记录 用户 一起保存在数据库中 db 字段具有唯一索引 因此尝试保存预先存在的字符串会生成错误 现在我正在生成一个随机字符串并使用 try catch 因此在添加新记录时如果抛
  • gmail 不断阻止 PHPmailer 登录

    我将在接下来的 8 小时内部署一个网站 而 Gmail 刚刚停止接受 PHPmailer 登录我的帐户 起初 它在测试过程中工作了几个小时 然后 它就停止工作了 我已经允许所有允许不太安全的应用程序从 gmail 登录 但它仍然不允许 ph
  • 简单的 PHP 条件帮助: if($Var1 = in list($List) and $Cond2) - 这可能吗?

    这是一个可能的功能吗 我需要检查一个变量是否存在于我需要检查的变量列表中 并且 cond2 是否为 true 例如 if row name 1 2 3 Cond2 doThis 它对我不起作用 我在复制粘贴中更改的只是我的列表和变量名称 i
  • 通过 Ajax 加载内容时,WORDPRESS 音频播放器未加载,MediaElement.js 未应用

    我正在创建一个 WordPress 主题 当我使用 ajax 加载内容时 它不会将 MediaElements js 应用于我的音频播放器 因此不会显示音频 我认为这是因为 MediaElement js 加载了 wp footer 并且此
  • 当数据验证失败时保留表单字段中的值

    我在弄清楚验证失败时如何保留用户数据时遇到问题 我对 PHP 有点陌生 所以我的逻辑可能会犯一些巨大的错误 目前 如果验证失败 所有字段都会被清除 并且 Post 数据也会消失 这是一些代码 假设用户输入无效电子邮件 我希望保留 名称 字段
  • 如何解压 PHP/Lumen/Laravel 的 gzip 请求?

    我收到来自第三方的 gzip 编码文本请求 1mb 所以这是有道理的 我的测试路线 router gt post testgzip function Illuminate Http Request request decompressed
  • PHP 会话不适用于游戏

    我正在尝试模仿一款名为 SKUNK 用骰子玩 的游戏来完成一项作业 我无法让会话正常工作 这是我第一次使用 PHP 我还被告知无需会议即可完成 这是我的代码
  • 生成大随机数 php [重复]

    这个问题在这里已经有答案了 我想使用 PHP 生成一个包含 75 个字符的数字 我到处寻找 但一无所获 除了这个 http dailycoding com tools RandomNumber aspx http dailycoding c
  • 如何在响应ajax codeigniter后停止执行其他控制器

    我想知道如何在响应输出 json 数据后停止执行函数和涉及的其他控制器 就我这里的情况而言 我只是打电话test 函数于dashboard控制器 In dashboard构造函数将执行MY Login library In MY Login
  • 如何使用 php 发送服务器错误响应?

    一旦用户点击删除按钮我的 jQuery 脚本要求服务器删除所选项目 现在我想要我的php发送成功或错误响应的脚本 是否有可能触发错误回调万一该项目无法删除 Thanks 我的 jQuery 代码 ajax type post url myA
  • 是否可以使用 PHP 重定向发送 POST 数据?

    更新 这不是重复的如何使用 PHP 发送 POST 请求 https stackoverflow com questions 5647461 how do i send a post request with php 那里的解决方案对我不起
  • Symfony2 Assetic 和 Less Sourcemaps

    我不确定如何破解 assetic less 过滤器以输出源映射文件 我这里指的是LessFilterhttps github com kriswallsmith assetic blob master src Assetic Filter
  • “使用未定义常量”注意,但该常量应该被定义

    共有三个文件 common php controller php 和 user php 文件 common php 如下所示 文件controller php看起来像 文件 user php 如下所示 执行脚本时 会给出通知 注意 使用未定
  • MySQL 追加字符串

    How can I append a string to the end of an existing table value Let s say I have the table below And let s say that Mari
  • 覆盖控制器 Symfony 3.4/4.0

    我目前正在尝试覆盖 FOSUserBundle 中的控制器 在新的文档中 https symfony com doc 3 4 bundles override html https symfony com doc 3 4 bundles o
  • CURL 中的 data-urlencode 是什么意思?

    我搜索了很多个小时试图弄清楚 php curl 中的 data urlencode 是什么 我尝试过这个 但我认为这是不对的 xmlpost object1 file https www lob com goblue pdf 在文档中是 d
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser

随机推荐

  • 如何为express.js 服务器设置 SSL 证书?

    之前 在旧版本的 Express 中 我可以这样做 express createServer key keyFile cert certFile 然而 在较新版本的 Express 中 这不再有效 var app express 我应该打电
  • 产品口味本地化

    我有 3 种产品风格 每种风格都进行了调试和发布 我已经成功地为每种风格赋予了独特的字符串和图标 现在我正在准备本地化 这需要针对每种产品口味使用不同的字符串 这是我当前的文件夹 目录设置 myApp src main res values
  • 如何在运行 CLI 和 Apache2Handler 时将系统环境变量获取到 PHP 中?

    我的系统是Ubuntu我已经设置了我的环境变量 etc environment 如果我在跑步PHP脚本使用CLI 环境变量来自 etc environment被认可 但是 如果我去执行PHP脚本通过http domain test php
  • Python电子邮件引用-可打印编码问题

    我使用以下命令从 Gmail 中提取电子邮件 def getMsgs try conn imaplib IMAP4 SSL imap gmail com 993 except print Failed to connect print Is
  • 使用 PyQt4 进行 OpenCV 视频捕获

    我一直在尝试使用 PyQt4 GUI 和 OpenCV 捕获视频 我创建了一些按钮 如 开始 结束 等来控制捕获 开始很好 但我无法停止捕捉 要停止捕获 我需要中断 while 循环开始捕获 下面的功能 我无法实现 现在 结束捕获 毁坏了窗
  • 在贪婪重复中回溯平衡组可能会导致不平衡?

    作为出于此问题的目的而一般编写的示例 我的目的是匹配一些数量a的 那么同样数量的b的 再加上一个b 检查此片段中展示的两种模式 也在 ideone com 上 var r1 new Regex xn a a a
  • 如何使CardView具有可点击和可检查的效果,以及如何使其成为深色主题?

    背景 在引入CardView之前 我在上面做了一些选择器my app模仿卡片 并让用户选择应用程序使用的主题 有些人更喜欢深色主题 问题 我想让它看起来和工作起来更原生 所以我尝试使用 CardView 遗憾的是 我无法理解如何设置 Car
  • Math.cos 不准确

    alert Math cos Math PI 2 为什么结果不精确为零 这是不准确的 还是一些实施错误 Math PI 2是实际值的近似值pi 2 取该近似值的精确余弦值不会产生零 您获得的值是该精确值的近似值 最高可达基础浮点数据类型的精
  • 恢复已删除的 Eclipse 项目

    我想在 eclipse 中创建一个新的 git 存储库 当我删除旧的存储库时 不幸的是整个项目已从工作区中删除了 有什么办法可以恢复项目吗 我将不胜感激你的回答 如果您的工作有另一个存储库 例如中央 git 服务器 另一个开发人员 另一台计
  • 在应用程序之间共享文件

    我可以与另一个应用程序共享一个应用程序相关的数据吗 假设我在 apk2 的 resources raw 文件夹中有一个音乐文件 我可以在 apk1 1 中使用相同的文件吗 thx 如果您的应用程序使用相同的证书进行签名并具有相同的andro
  • 为什么 Vue 无法解析本地主机的图像?

    作为 vue js 的后端 我使用 laravel 端口 8000 在我的数据库中 我有用户及其个人资料照片的名称 this user photo 所以 我想展示这张照片 img alt Profile Photo 当我去http loca
  • MySQL:事务与锁定表

    我对事务与锁定表有点困惑 以确保数据库完整性并确保 SELECT 和 UPDATE 保持同步并且没有其他连接干扰它 我需要 SELECT FROM table WHERE LIMIT 1 if condition passes Update
  • Objective-C:`@synthesize fooBar;` 与`@synthesize fooBar=_fooBar;` [重复]

    这个问题在这里已经有答案了 可能的重复 带下划线前缀的综合属性和变量 这是什么意思 我在代码中见过这两个 有什么不同 synthesize fooBar synthesize fooBar fooBar synthesize fooBar
  • 处理IE浏览器中的ctrl+按键事件

    I m using hotkeys Ctrl key in my flex application getting problem when my app is running in IE when I press Ctrl D im ge
  • 使用 Doctrine 构建通用的 OO ACL

    我正在寻求设计一个以学说为基础的 ACL 系统供我自己使用 尽管我在一些最初的设计考虑因素上遇到了困难 现在我正在考虑根据类和唯一标识符来制作它 并将它们存储在表中 如下所示 Table ACL ResourceClass Resource
  • 子进程打开('source venv/bin/activate'),没有这样的文件?

    我想进入 python 文件中的虚拟环境 但它没有引发这样的文件 import subprocess subprocess Popen source Users XX Desktop mio worker venv bin activate
  • 如何绘制双对数 R 图的线性回归?

    我有以下数据 someFactor 500 x c 1 250 y x 25 someFactor 我以双对数图显示 plot x y log xy 现在我使用线性模型 找出 数据的斜率 model lm log y log x model
  • 如何以编程方式从 Android 删除 SQLite 数据库

    我想从以下位置删除数据库文件Android file system以编程方式 我可以启动 shell 脚本吗adb它又在 Android 空间中运行 shell 脚本来删除数据库 我可以在短时间内完成这件事吗JUnit测试用例 带有syst
  • 哈希表和Trie(前缀树)如何选择?

    因此 如果我必须在哈希表或前缀树之间进行选择 那么导致我选择其中之一的区别因素是什么 从我自己天真的角度来看 使用 trie 似乎有一些额外的开销 因为它不是存储为数组 但就运行时间而言 假设最长的键是最长的英语单词 它本质上可以是 O 1
  • 使用 LightOpenID 登录/注销用户状态

    我正在尝试在我的网站上使用 LightOpenId 来登录 注销用户 这工作正常 但我的问题是 如何跟踪用户登录 注销状态并采取相应的操作 我希望用户仅在登录时访问我的网站功能 并在用户注销时重定向到登录页面 提前致谢 你的问题实际上与Op