我想在.js文件中获取会话数据。在这里,我希望数据在函数中现在我直接把值放了。如何从会话中获取它。
.js文件
function callAllfnt(){
get_data(1) ;
}
我希望 1 作为会话数据。如何接受它
如果你想在页面加载它,试试这个:
function callAllfnt() {
var data = "<?php echo $_SESSION['givenName']; ?>";
}
在应用程序生命周期的后期,使用 AJAX
1)
查看文件
<script type="text/javascript">
var Sessionvalue = "<?php echo $this->session->userdata('session_name')";
<script>
加载 js 文件后
<script src="<?php echo base_url(); ?>js/file.js" type="text/javascript"></script>
JS 文件
function callAllfnt() {
var data = SessionValue;
}
(或)
2)使用Ajax调用并获取会话值
您需要创建将返回会话数据的 php 脚本,并使用 ajax 调用它,如下所示:
.php
if (isset($_GET['var'])) {
echo json_encode($_SESSION[$_GET['var']]);
}
js with jQuery:
function get_data(variable, callback) {
$.get('session.php', {'var':variable}, function(data) {
callback(data);
}, 'json');
}
您可以使用以下命令调用该函数:
get_data(1, function(value) {
alert(value);
});
如果你的
java脚本是用html页面编写的,只需在单引号中使用php标签,就像
function callAllfnt() {
var value = '<?php echo $_SESSION["varName"]; ?>';
get_data(value) ;
}
但是如果你的javascript代码是单独编写的js文件,那么使用ajax。
第三个选项是,如果您的javascript文件包含在php文件中,则在js文件(包括代码)之上创建一个javascript变量,并在js文件中使用该变量。