将JavaScript变量传递给PHP会话

时间:2012-06-30 14:38:09

标签: php javascript

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

即。如何将JavaScript var传递给PHP Session。

<?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>

感谢您的帮助。

2 个答案:

答案 0 :(得分:5)

另一个用于计数... JavaScript在用户的计算机上运行,​​PHP在服务器上运行。查看页面源(右键单击,查看源代码),您将看到它无法正常工作的原因:

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

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

答案 1 :(得分:0)

试试这个

<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>