【问题标题】:How can I assign a javascript variable to the session value如何将 javascript 变量分配给会话值
【发布时间】:2011-06-17 07:13:29
【问题描述】:
function changeClient(s) {
if(s.value!=0)
{
    document.location.href = "map.php?c="+s.value;
}

我必须将 s 的值分配给会话变量 $_SESSION['id']。我该怎么做?

【问题讨论】:

    标签: php javascript session


    【解决方案1】:

    您不能将客户端变量(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'];
    ?>
    

    【讨论】:

      【解决方案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);
      ?>
      

      【讨论】:

        【解决方案3】:
        $_SESSION['id'] = $_GET['c']
        

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

        【讨论】:

        • 是的..我把 $_SESSION['id'] = $_GET['c']; 在另一个页面中我已经检索了这个值..if(isset($_SESSION['id' ])) {$g['client_id']=$SESSION['id'];}..但它没有进入if条件。
        • 您是否在两个页面的顶部都使用了session_start()
        • 检查JS代码是否能够正确发送数据,并在分配后通过echoing SESSION变量进行验证。
        • 好的,欢迎。现在您可以通过勾选左侧的小勾号将最有用的答案标记为正确。
        【解决方案4】:
        $_SESSION['id'] = $_GET['c']
        

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

        【讨论】:

        • 我认为实际上是 $_GET['c'] 不?
        • 是的..我把 $_SESSION['id'] = $_GET['c']; 在另一个页面中我已经检索了这个值..if(isset($_SESSION['id' ])) {$g['client_id']=$SESSION['id'];}..但它没有进入if条件。
        • 现在进入if条件。我认为问题出在$g['client_id']=$SESSION['id'];
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-03-04
        • 1970-01-01
        • 2020-10-15
        • 2016-09-22
        • 1970-01-01
        • 2014-06-04
        • 1970-01-01
        相关资源
        最近更新 更多