PHP会话 - 随机不写入值

时间:2012-09-25 05:48:43

标签: php jquery ajax session session-variables

我正在构建一个结合了ajax和PHP的站点来创建加载/验证/提交页内的动态表单。我正在使用PHP会话变量与自定义处理程序,$ .post和$()。load的组合来完成此任务。我在各个php页面中构建我的表单(它们非常大),然后将它们加载到我的主页的一部分。

在我的主页顶部,我开始这样的会话:

<?php 
require("inc/SecureSession.php"); // Custom handlers
session_save_path($_SERVER['TEMP']); session_start();
?>

然后在每个表单页面中,我启动一个会话并生成一个令牌变量,如下所示:

<?php
require("inc/SecureSession.php"); // Custom handlers
session_save_path($_SERVER['TEMP']); session_start();
$_SESSION['token'] = rand();
?>

此标记变量作为隐藏字段插入表单页面的底部,并应写入会话。

但是,我发现在动态加载(或发布)页面中设置的会话变量似乎不会始终保持设置状态。它们在表单页面的范围内工作,但是并不总是转移回主页面。我认为这可能是因为他们实际上并没有访问正确的会话,但似乎表单页面外的所有会话变量都可以在表单页面中访问。

所以我很难过。我正在使用的PHP处理程序是http://www.zimuel.it/en/encrypt-php-session-data/

编辑:当我直接加载其中一个表单页面时,它会100%写入时间。只有当我通过jQuery加载表单时它才会变得不稳定。

Edit2:问题不在于我是以错误的顺序声明代码。我做了一些研究,发现我应该在开始会话之前声明保存路径和处理函数。问题似乎是我打开PHP与“

0 个答案:

没有答案