我在 PHP 上有一个变量:($_SESSION["logCode"]
设置了值并启动了会话)但我无法使用jquery.session.js
插件和以下方法在 jQuery 中访问它:($.session.get('logCode')
它给了我未定义的)。谁能告诉我有什么问题,我该如何解决?
ps:我可以用php获取值,但我需要在JS(jQuery)中
谢谢
我在 PHP 上有一个变量:($_SESSION["logCode"]
设置了值并启动了会话)但我无法使用jquery.session.js
插件和以下方法在 jQuery 中访问它:($.session.get('logCode')
它给了我未定义的)。谁能告诉我有什么问题,我该如何解决?
ps:我可以用php获取值,但我需要在JS(jQuery)中
谢谢
该插件无法访问 php 会话变量(没有插件可以,这将是一个严重的安全漏洞)。您必须将它们从 PHP 传递给 javascript。
var myVar = '<?php echo $_SESSION["foobar"]; ?>';
js 将无权访问 php 会话存储。你能做到这一点的唯一方法是通过在你的页面上注入js来用php将它暴露在你的页面上......所以在php中
echo "<script type='text/javascript'>";
echo " var logCode = '".addslashes($_SESSION["logCode"])."';";
echo "</script>";
或者,如果您想批发从会话中获取所有内容,您可以这样做:
echo "<script type='text/javascript'>";
echo " var sessionData = ".json_encode($_SESSION).";";
echo "</script>";
但很可能第二种方法可能会发布比您真正想要的更多信息。
当您使用 php 设置会话变量时,该变量将存储在服务器上,并且只能通过 php 而不是 jquery 访问。JQuery 变量存储在客户端计算机中,只能由 jquery 访问。
您可以使用 AJAX 通过 jquery 从客户端计算机访问会话变量。