2010-03-12 46 views
1

这是我的工作。在我的网站上,我有多个进程,每个进程都包含多个步骤。现在在其中一个进程中,在执行该进程的下一步之前执行错误检查例程。会话变量被设置为指示错误状态,并且它将重定向回引用者或显示下一页的内容。有没有更好的方法来跟踪会话变量创建/访问整个不同的页面?

我相信现在这种功能在整个web开发过程中都很常见。正在发生的问题是会话变量留在周围,没有被正确清理。有时这会引起不希望的行为。我的网站正在增长,我发现我需要越来越多的会话增值服务来跟踪不同的系统和错误状态。

所以我想创建一种“会话变量管理器”来跟踪会话变量的使用情况。这个想法很简单。它将具有上下文的概念(例如注册过程)并允许在该上下文内访问预定义的会话变量集。另外,var和context将与一个动作配对以进行某种形式的事件处理。

所以,如果你没有注意到我是网络开发新手。 对我提出的想法有任何想法或意见将不胜感激。后端是用PHP/MySQL编写的。

回答

2

在PHP中,会话存储为对象(又名数组)。与那些你可以存储多个维度的数据。那么为什么你不开始以如下格式存储会话变量:

$_SESSION[$context][$var] = $value; 
// Example: $_SESSION['registration']['laststep'] = 4; 
+0

这是一个更好的更直接的解决方案。谢谢! – penguin4hire 2010-03-12 19:53:32

0

最好不要使用会话变量。所有对您的Web应用程序的请求都应包含足够的信息,以便在没有附加服务器端状态的情况下进行处这是RESTful architectural style的基础。

More Discussion在网站上提供了一个优秀的开源RESTful PHP框架,您可能想了解一下。

+0

并不是所有的东西都是RESTful – Pickle 2010-03-12 19:30:55

+0

这个我将不得不去研究,但我都是为了学习不同的建筑风格。谢谢! – penguin4hire 2010-03-12 19:53:55

相关问题