如何在.js文件的javascript函数中获取php会话数据


How to get the php session data in javascript function of a .js file

我想在.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文件中使用该变量。