将变量值从javascript传递给php

时间:2012-12-24 05:10:33

标签: php javascript ajax

我正在开发一个项目,我使用ajax进行异步数据库访问。 我将值存储在JavaScript变量中,如下所示。

var content=xmlhttp.responseText;

现在我想要的是将此值传递给同一页面上的php模块。 请建议我..紧急

3 个答案:

答案 0 :(得分:1)

您必须向另一个脚本发出单独的AJAX请求才能实现此目的。 PHP是服务器端的,因此不能直接与客户端交互。

答案 1 :(得分:0)

你应该在PHP中处理数据(你分配给内容),因为正如其他答案告诉你的那样,PHP是服务器端的,而JavaScript是在客户端上。如果您从您控制的页面获取此数据,则只需在发送数据之前修改数据var content = xhr.responseText;。例如,如果要对服务器上的process.php文件进行AJAX调用以获取您在JavaScript中分配给content的数据,请确保在process.php中处理数据。 echo()将数据(然后存储在客户端的content内):

在process.php中:

// below is the normal server script which you are storing in content on the client
// echo $result;
// instead, we are going to operate on the data first:
return doSomething($result);

然后在客户端:

var newContent = xhr.responseText;

newContent变量将包含您以前希望用PHP修改的数据。如果您无法控制使用AJAX调用的服务器脚本,那么如前所述,您需要使用PHP向服务器发送SECOND AJAX调用,并使用$_GET或{{1检索$_POST数据,然后在那里播放。

答案 2 :(得分:0)

我不清楚你需要将值从javascript传递给php。

但我可以给你,

  1. 对您的问题采取非推荐但有效的方法:
    你说,你最初是在进行Ajax调用。在处理相应的服务器端php函数时,将响应值(xmlhttp.responseText的值)存储到 $ _ SESSION 变量中。最后在ajax响应处理函数中重新加载页面(使用location.reload())。

  2. 针对您的问题的推荐方法:
    你可能在php代码中添加了一些if-else控制流结构,并期望在获得ajax响应值后执行它们(遗憾的是你不能这样做)。因此,如果你确实有这样的逻辑,那么将那些if-else条件转换为相应的Javascript代码。可能是一个javascript函数,并通过传递ajax响应值来调用该函数。这个新功能将使用您的ajax响应值,并通过应用必要的逻辑对您网页的某些部分进行更改。