如何在javascript文件中包含PHP$\会话值?
我使用如何在javascript文件中包含PHP$\会话值?,javascript,php,session,Javascript,Php,Session,我使用$\u SESSION['siteRoot']将我的网站的根地址存储在中(它基本上是一个框架,因此可以根据用于访问网站的URL进行更改)。我需要在我的一些javascript文件中使用此值 到目前为止,我一直将我的js文件包括为.php,并将以下代码放在我的js文件的顶部,如下所示: <?php header("Content-type: application/javascript"); session_start(); ?> 同时也完全忽略了课程开始。如果
$\u SESSION['siteRoot']
将我的网站的根地址存储在中(它基本上是一个框架,因此可以根据用于访问网站的URL进行更改)。我需要在我的一些javascript文件中使用此值
到目前为止,我一直将我的js文件包括为.php
,并将以下代码放在我的js
文件的顶部,如下所示:
<?php
header("Content-type: application/javascript");
session_start();
?>
同时也完全忽略了课程开始。如果我不启动会话,那么我就不能使用变量(显然…),但我找不到一种启动它的方法,它不会删除我在主页中已经创建的会话
有什么想法吗?这个问题并不是由会话本身引起的,而是因为在调用会话之前我没有包括我的类autoloader,因此我的自定义类在反序列化过程中无法存活(即使它是一个javascript文件,我没有使用任何上述类!) 我将javascript代码更改为:
<?php
include ('include/autoloader.php');
header("Content-type: application/javascript");
session_start();
?>
一切正常。当您不使用该页面上的任何序列化类时,很容易忘记 看起来这与创建JS文件无关。可能会删除JS位,除非您认为它是相关的?
session\u start()
创建新会话或恢复现有会话。当您有一个现有会话时,session\u start()
将不会清除或覆盖它。如果您看到每次页面加载都会创建新会话,并且您排除了脚本意外地在其他地方破坏会话的可能性,那么服务器的会话处理存在问题,而不是脚本。Goikiu-这不起作用。我的会话仍然被重置。George-这是我假设的,因为它在一台服务器上工作,而不是在另一台服务器上工作-您对我如何调试类似的东西有什么建议吗?您是否看到这两个环境(localhost和web server)上是否存在差异?当我运行phpinfo()时,我确实注意到会话保存路径设置为“无值”-我需要换这个吗?
<?php
include ('include/autoloader.php');
header("Content-type: application/javascript");
session_start();
?>