问题标签 [zend-session]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
55 浏览

zend-framework - Zend_Session 没有携带值来查看

我在我的 MVC 站点中设置了一个 Session 变量来携带要在任何后续页面上使用的 id。

在我的控制器中, var_dumping 会话在此处显示正确的值,但是当我将所述值传递给视图并尝试在此处回显它们时,它出现空白。

有关导致它们不出现的任何指示。

请注意,该视图是部分视图,而不是主要视图。

Bootstrap 会话相关代码:

控制器相关代码:ProductController.php

查看部分:sidebar.phtml

0 投票
1 回答
972 浏览

php - Internet Explorer 上的 Zend 框架会话

发布此链接后仍然无法使其工作: Zend framework session lost

我有这个注册表单,允许用户注册并将他们立即重定向到他们的页面。除了INTERNET EXPLORER之外,所有浏览器都可以正常工作。

我尝试了不同的方法,但仍然无法正常工作。将用户保存到数据库后,会话将不会存储。但是,如果我取出用户的保存,则可以存储会话和 cookie。

这是代码:

这是我正在做的另一种方式,但仍然无法在IE上运行:

0 投票
7 回答
23193 浏览

php - 如何在 Zend framework2 中清除会话容器

我最近开始使用 Zendframework 2 构建一个应用程序,我在 ZF1 方面有很好的经验,我在 ZF2 中面临的主要问题是会话。

这是我创建会话容器的方式。

// 会话容器创建:(之前我们将其称为命名空间)

现在像这样我有几个容器,

我可以像这样清除特定容器的密钥

// 按键从会话中获取值:(从命名空间获取值)

// 在会话中设置值:(从命名空间设置值)

现在我的问题是清除在我的应用程序的多个级别中设置的整个容器。

如果我尝试下面的代码,它会清除我所有的会话容器。

我只想清除名为“用户”的容器,它有很多键(我不知道最后会有什么)。有没有办法做到这一点

我知道我可以在每个键上做 offsetunset 但这不是我觉得的最佳解决方案。

请建议是否有任何替代方法来清除特定的会话容器。

注意: -我没有使用任何第三方模块,如 ZfcUser 和 Akrabat 会话

提前感谢您回复此帖子。

0 投票
1 回答
149 浏览

php - PHP Zend 框架在注销时杀死所有浏览器之间的会话

我可以使用 firefox 和 google chrome 登录我的应用程序。当我点击退出谷歌浏览器时,它会返回登录屏幕。但是,用户仍然登录到 Firefox。当我将用户从其中一个浏览器中注销时,如何从 firefox 和 google chrome 中删除会话。

谢谢!

0 投票
1 回答
520 浏览

php - 如何在 Zend Auth 中记录用户会话过期时的过期时间

我想将用户登录和注销/会话到期信息添加到数据库中,正常登录和注销很容易,但我不知道如何进行自动会话到期。

我的身份验证如下所示。

我的登录控制器操作

我的用户控件中的身份验证方法

0 投票
1 回答
49 浏览

zend-framework - zend_session 在得到第二个产品后出错

我是初学者zend。当我搞乱 zend_session 时,我遇到了这样的问题。

一件物品一切正常。但不止一项,它会停止添加更多项或增加匹配项。

这是我的代码

0 投票
2 回答
1300 浏览

php - 使用 Zend Framework 1 重定向后的新会话 ID

我很难解决 Zend Framework 1 应用程序的问题。这是一个自定义的网上商店应用程序,客户端从结帐页面被重定向到支付网关提供商。所以它看起来像这样:

  1. 当客户在后台在我们的结帐页面上选择一种付款方式时,我的应用程序和支付提供商之间正在进行交易握手。

  2. 然后,支付提供商将客户重定向到的支付 URL 发回给我。

  3. 客户付款,付款提供商将客户重定向回我们的网上商店,并获得成功的 url。

在大多数情况下,这工作得很好,但在某些情况下,客户端在被重定向到我们的成功页面后会获得一个新的会话 ID。这是一个问题,因为此时正在使用会话数据来完成订单。

在本地,我只能在大约 50 次尝试中重现这个问题。因此,它是“有时有效,有时无效”的情况之一,或者换句话说,是调试和修复的痛苦之一

我尝试使用我的 application.ini 中的会话设置以及我的 Bootstrap 中的 _initSession,但实际上在进行了这些更改之后,我设法重现了该问题(那一次)。

原始的 application.ini 和 Bootstrap.php(仅相关部分)如下所示:

应用程序.ini:

引导程序.php:

请注意,在所有其他情况/用例中,会话在整个站点中都可以正常工作。只有在重定向之后,某些客户端才会出错。我让应用程序记录了额外的信息,并且在这些情况下我实际上可以看到会话 ID 的变化。

这可能与较长的会话生命周期(1 个月)有关吗?还是我必须调用 Zend_Session::rememberMe(...); 在引导程序中的 Zend_Session::start() 之后?或任何其他想法、提示和建议?

编辑:我尝试过的其他会话选项如下:

0 投票
0 回答
136 浏览

zend-framework - 使用 zend 模块时处理 Zend Auth 数据

我正在为我的项目开发基于 zend 模块的结构。作为Zend_Auth类的默认会话存储是Zend_Auth. 我根据被调用的模块进行了更改。说管理员我使用 auth 命名空间Admin_Auth和默认模块我使用命名空间名称Default_Auth

我这样做是因为,如果我这样做Zend_Session::destroy(),即使是默认模块也会破坏完整的会话。所以在注销时使用命名空间等等Zend_Session::namespaceUnset('Admin_Auth');

每次在不同的控制器中我都必须使用

只是指向相应的会话数据。

我正在考虑将它移动到模块Bootstrap.php

首先,这是正确的方法吗?其次,如果是,那么我如何访问每个控制器中$auth的返回值?_initAuth()

0 投票
0 回答
3073 浏览

php - 了解 ZF2 中的会话管理器和 Zend\Authenticate

在登录操作中,我有以下代码:

这段代码有两个问题:1)我将会话保存在数据库中,会话 SaveHandler 是在服务管理器中配置的。我不知道一旦我使用 Zend\Authenticate 我是否也应该使用会话管理器。在文档中说

“除非另有说明,否则 Zend\Authentication\AuthenticationService 使用名为 Zend\Authentication\Storage\Session 的存储类,而后者又使用 Zend\Session。”

所以我的第一个问题是:我可以只使用 Zend\Authenticate 配置 sessionHandler 还是必须使用会话管理器?

2)我无法弄清楚 ZF 中的会话存储是如何工作的。登录后,会话数据不会保存在数据库中。如果我正在做一些调试,我会得到以下数据:

但是,如果我正在对登录进行刷新(再次运行登录操作),则上一个会话的数据将写入数据库,而不是当前会话的数据。那么第二个问题是,为什么会话数据在登录时没有持久化到数据库中,会话实例化过程的哪一步创建了带有会话 ID 的 cookie?

0 投票
1 回答
1153 浏览

zend-framework2 - 如何在 ZF2 中更改会话 cookie 路径?

我想更改 ZF2 中的会话 cookie 路径。默认情况下,/我想在/my_path/ 我尝试使用 SessionManager进行更改时更改它

但它不起作用


解决:更改第一行$config = new \Zend\Session\Config\SessionConfig();