在使用 PHP 的 SESSION 中传递变量的可靠性如何
Posted
技术标签:
【中文标题】在使用 PHP 的 SESSION 中传递变量的可靠性如何【英文标题】:How reliable is passing variables in SESSION w/ PHP 【发布时间】:2012-02-17 19:41:41 【问题描述】:将变量设置到会话中然后在另一个页面上检索它们的方法有多可靠?
我有一个脚本,用户可以在其中使用 jQuery UI 在页面上拖放元素。我使用 AJAX 记录事务,但是,有时我会得到缺少项目 ID 的结果,或者确切地说我得到 0。当用户第一次访问此脚本页面时,我将此 ID 设置为会话变量。该页面包含一个包含我的函数的 JS 文件,并从那里将事务数据发送到 AJAX 页面,在该页面中我将事务存储到我的数据库中。因为项目 ID 相同,所以我从我的会话中得到它。这不是一个一致的错误,只是偶尔发生一次,但它让我很困扰。
为什么会随机发生?我怎样才能让我的代码做到万无一失?
更新:好的,似乎是其他东西可能会干扰该特定会话 ID。
我在使用会话的每个页面上都有session_start();
,我设置它们的方式与设置所有会话的方式相同:`$_SESSION['project'] = $projectID;
回到调试...
【问题讨论】:
您的问题含糊不清。您有一个非常具体的问题,但没有提供任何代码或尝试隔离问题。 $_SESSION 是可靠的,但可能不是您使用它的方式。 对其可靠性的评论。 ***.com/questions/676846/… 【参考方案1】:是的,您可以依赖 php 会话。如果您得到奇怪的结果,您似乎必须调试您的代码,直到找到问题为止。
【讨论】:
此外,SO 上 90% 的常见会话问题是在所有需要访问会话的页面上都缺少session_start()
。以上是关于在使用 PHP 的 SESSION 中传递变量的可靠性如何的主要内容,如果未能解决你的问题,请参考以下文章