如何将JavaScript变量传递给php函数

时间:2011-05-20 09:05:54

标签: php javascript

  

可能重复:
  How to get javascript function data into Php variable

我正在用javaScript编写代码。因为我需要调用php函数。

但问题是我必须将Javascript变量传递给php函数。

我的javascrpt如下,(这是正确的)

<script>
obj.value="0254"
if (obj2.value != -1) 
{
       var PLOptions= "<?php PLOptions(?>"+ obj.value +"<?php)?>"
}
</script>

这里PLOptions()是php方法,obj.value是javascript变量。

请让我知道,我怎么能做到这一点。

6 个答案:

答案 0 :(得分:4)

你做不到。 PHP在服务器端执行,Javascript客户端。这意味着,PHP代码在Javascript之前执行。

但是,您可以使用AJAX从Javascript调用PHP函数。

答案 1 :(得分:1)

  1. PHP在服务器上运行并将HTML发送到服务器。
  2. 服务器将HTML发送给客户端。
  3. 客户端呈现网页并执行JavaScript
  4. 此时将数据传递给PHP函数为时已晚。

    您必须发出新的HTTP请求...

    • 提交表格
    • 设置location.href
    • 使用Ajax
    • 添加图片

    ...并将数据包含在POST正文或GET查询字符串中。

    然后,PHP可以从$_POST$_GET读取并返回更多数据。

答案 2 :(得分:0)

请注意,它们以不相交的方式执行,当您的PHP执行它正在运行的服务器端时,您的JavaScript会运行客户端。

您需要做的是将回传/ AJAX发布到页面并作为通话的一部分传入变量。

答案 3 :(得分:0)

您不可能必须使用Ajax请求将数据发送到php脚本。

答案 4 :(得分:0)

认为你必须使用AJAX(HTTPRequest)来实现这个并将你的参数作为POST或GET传递给php ..

php代码示例:

if(isset($_POST['parameter1']) && isset($_POST['parameter2'])){

    //some function code

    echo return_value; //and here use echo as return to get the result to javascript

}

AJAX部分可以通过多种方式完成,如果您希望我通过示例扩展,请告诉我您是否正在使用框架以及if(which)

答案 5 :(得分:0)

JS在客户端执行,而PHP在服务器端执行,因此您必须将JS值发送到服务器。这可能隐藏在$_POSTAJAX