Javascript 将jsvar传递给PHP var

Javascript 将jsvar传递给PHP var,javascript,php,ajax,Javascript,Php,Ajax,我需要一个“全局”变量,因为我需要在不同的页面中使用它,并且我也想修改它:我认为我需要使用$\u SESSION 当用户单击下拉列表或列表时,我需要更改此变量 我有这个: 解决方案1 第A页: $('#list.test li').on('click',function(){ choice=$(this).attr('id'); $.ajax({ url: "PageB.php", data: {word : choice},

我需要一个“全局”变量,因为我需要在不同的页面中使用它,并且我也想修改它:我认为我需要使用
$\u SESSION

当用户单击下拉列表或列表时,我需要更改此变量

我有这个:

解决方案1

第A页:

$('#list.test li').on('click',function(){           
    choice=$(this).attr('id');
    $.ajax({
      url: "PageB.php",
      data: {word : choice},
      dataType: "html",
      success: function (data) {
      $('#content_table').html(data);                                 
      }
  });                                   
});
PageB

PageC以验证结果

session_start();
echo $_SESSION['b']; // Error !!
在我的PageC中,我有一个错误(注意:未定义索引:b)

是否可以使用ajax更新会话变量

解决方案2

PageA:我想把id JS-var传递给PHP-var

$('#list.test li').on('click',function(){           
    choice=$(this).attr('id');
    <?php $_SESSION['b'] ?> = choice; //<--- it is possible ?
    $.ajax({
      url: "PageB.php",
      data: {word : choice},
      dataType: "html",
      success: function (data) {
      $('#content_table').html(data);                                 
      }
  });                                   
});
$('#list.test li')。在('click',function(){
choice=$(this.attr('id');

=choice;//
$\u SESSION['b']=$\u GET['projet'];
应该是
$\u SESSION['b']=$\u GET['word'];

您可以通过JavaScript将数据推送到cookie,类似于
document.cookie=“key=value”


并在后端接收它,比如
$\u COOKIE[“key”];

$\u SESSION['b']=$\u GET['projet'];
:这不应该是
$\u SESSION['b']=$\u GET['word'];
?是的,这是“$\u SESSION['b']”,抱歉,这是复制/过去的错误。我认为您需要将
word
用引号括起来,这样它才能处理任何javascript错误?是否
choice
希望
var
在前面?不,现在在js中设置$#u会话为时已晚。您需要像Sol#1中那样异步执行此操作。在sol1中,我可以发送并回显var“choice”。我想,我需要用ajax发送会话变量!oups,是的,它是“$\u session['b']”,对不起,这是复制/过去的错误尝试在分配变量之前打印该变量。也可以尝试$\u GET[“word”]。我不想使用cookie;)没有它是否可能?
$('#list.test li').on('click',function(){           
    choice=$(this).attr('id');
    <?php $_SESSION['b'] ?> = choice; //<--- it is possible ?
    $.ajax({
      url: "PageB.php",
      data: {word : choice},
      dataType: "html",
      success: function (data) {
      $('#content_table').html(data);                                 
      }
  });                                   
});