如何将javascript变量分配给会话值

时间:2011-06-17 07:13:30

标签: php javascript session

function changeClient(s) {
if(s.value!=0)
{
    document.location.href = "map.php?c="+s.value;
}

我必须将s的值赋给会话变量$ _SESSION ['id']。我怎么能?

4 个答案:

答案 0 :(得分:3)

您无法将客户端变量(Javascript)分配给服务器端变量(PHP)。

你必须使用ajax来做到这一点。

<script>
function assignJsValueToPHPSession()
{
 var jsVar = 1;
 $.ajax({
  type:post,
  url: "test.html",
  data: 'sessionjsvar=' + jsVar,
  success: function(){
    $(this).addClass("done");
  }
 });
}

test.php的

<?php
  $_SESSION['phpvalue'] = $_POST['sessionjsvar'];
?>

答案 1 :(得分:2)

您可以使用javascript设置cookie,并且可以在服务器端变量(PHP)中访问相同的cookie。

$.cookie("name1", "test"); // emample 1
$.cookie("name1", "test", { expires: 7 }); // emample 2
$.cookie("name1", "test", { path: '/User', expires: 7 }); // emample 3

获取Cookie

警告($ .cookie(“test”));

//在PHP中

<?php
print_r($_COOKIE);
print)r($_REQUEST);
?>

答案 2 :(得分:1)

$_SESSION['id'] = $_GET['c']

首先检查c是否真的在网址中。

答案 3 :(得分:1)

$_SESSION['id'] = $_GET['c']

将您发送的GET参数设置为会话变量。