我正在使用ajax进行异步数据库访问的项目。 我值存储在JavaScript变量如下..将变量值从javascript传递到php
var content=xmlhttp.responseText;
现在是我想要的就是这个值传递给同一个页面上的PHP模块.. 请建议me..its迫切
我正在使用ajax进行异步数据库访问的项目。 我值存储在JavaScript变量如下..将变量值从javascript传递到php
var content=xmlhttp.responseText;
现在是我想要的就是这个值传递给同一个页面上的PHP模块.. 请建议me..its迫切
你必须向另一个脚本发出单独的AJAX请求才能实现此目的。 PHP是服务器端的,因此不能直接与客户端交互。
你应该在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向服务器发送第二次AJAX调用,并使用$_GET
或$_POST
来检索该数据,然后使用然后在那里玩。
我不清楚您需要将值从javascript传递给php。
,但我可以给你,
对你的问题的非推荐,但工作方式:
你说,你是在第一次调用Ajax。在处理相应的服务器端php函数时,将响应值(xmlhttp.responseText的值)存储到变量$ _SESSION变量中。最后在ajax响应处理函数中重新加载页面(使用location.reload())。
而且对你的问题建议的方法:
你可能已经增加了一些的if-else控制流结构中的PHP代码,并期待获得Ajax响应值(可惜你不能做到这一点)后执行。所以如果你确实有这样的逻辑,那么将这些if-else条件转换为相应的Javascript代码。可能是一个JavaScript函数,并通过向其传递ajax响应值来调用该函数。这个新函数将使用您的ajax响应值,并通过应用必要的逻辑在网页的某些部分进行更改。
进行另一个Ajax调用来发送数据。有很多相关的问题(这个问题很多)。检查此页面上的右栏。 –