将 JavaScript 变量传递给 PHP 会话

Passing JavaScript Variables to PHP Session

本文关键字:PHP 会话 JavaScript 变量      更新时间:2023-09-26

为什么我在屏幕上没有任何打印(m1、m2 或 m3)?

即如何将 JavaScript var 传递给 PHP 会话。

<?php session_start(); ?>
<html>
<head>
<script type="text/javascript">
function disp_text()
   {
      var p = document.myform.mylist.value;
      <?php $_SESSION['color'] ?> = p;
      <?php echo $_SESSION['color'] ?>;
   }
</script>
</head>
<body>
<FORM NAME="myform">
<SELECT NAME="mylist" onChange="disp_text()">
<OPTION VALUE="m1">Red
<OPTION VALUE="m2">Blue
<OPTION VALUE="m3">Green
</SELECT>
</FORM>

感谢您的任何帮助。

还有一个用于计数...JavaScript在用户的计算机上运行,PHP在服务器上运行。查看页面源代码(右键单击,查看源代码),您将确切地看到它不起作用的原因:

<script type="text/javascript">
function disp_text()
   {
      var p = document.myform.mylist.value;
      = p;
      ;
   }
</script>

将JS变量放入PHP的唯一方法是通过表单(我松散地使用它来包含AJAX)。

试试这个

<html>
<head>
<script type="text/javascript">
function disp_text()
   {
      var e = document.getElementsByName("mylist")[0];
      var p = e.options[e.selectedIndex].value;
      sessionStorage.color = p;
      document.write(p);
   }
</script>
</head>
<body>
<FORM NAME="myform">
<SELECT NAME="mylist" onChange="disp_text()">
<OPTION VALUE="m1">Red</OPTION>
<OPTION VALUE="m2">Blue</OPTION>
<OPTION VALUE="m3">Green</OPTION>
</SELECT>
</FORM>
</body>
</html>

index.php:

<script type="text/javascript">
    var time = "OK then, let's do this!";
    sessionStorage.setItem("time", time);
    window.location.href = "test.php";
</script>

测试.php

<script type="text/javascript">
    var time = sessionStorage.getItem("time");
    console.log(time);
    <?php $abc = "<script>document.write(time)</script>"?> 
</script>
<?php
    echo $abc;
?>