2013-03-24 70 views
-1

请耐心等待,我是PHP新手。我在同一页面上使用了PHPjQuery的混合物。我需要将jQuery的变量传递给PHP。我遇到的所有示例都描述了如何将变量传递给我不想要的服务器上的PHP文件。到目前为止,我管理使用jQuery $ .toJSON()将对象转换为JSON。 我的问题是:如果jQueryPHP都驻留在同一页面上,是否可以将jQuery数据传递给php代码?将变量从jQuery传递到PHP在同一页上

这是到目前为止我的代码:

var myObject = {name: 'Tomas', age: 38}; 
var encoded = $.toJSON(myObject); 
var name = $.evalJSON(encoded).name; 
var version = $.evalJSON(encoded).age; 
+3

简单的答案否,因为PHP运行_before_ the页面甚至加载。但是你可能会触发页面上某些变量的保存(session/cookie等)。一个非常简单的解决方案是把你的PHP里面的图像或脚本动态加载 – 2013-03-24 23:07:49

+0

你不能这样做.. php运行在服务器上和jQuery运行在浏览器上 – 2013-03-24 23:08:28

+0

我知道php运行在服务器上,但我们仍然可以运行PHP函数,并在会话期间提供php数据。 – FadelMS 2013-03-24 23:11:02

回答

3

不,这是不可能的,因为PHP不是一个客户端脚本,而是一个服务器端脚本。这意味着当数据被提供给客户端时,PHP脚本很可能已经完成了运行。下面演示了PHP和JavaScript之间的关系:

服务器 - > PHP - >客户端(浏览器) - > Java脚本

因此,这是不可能的JavaScript沟通PHP在同一页上。你可以做的就是使用Ajax来调用服务器端文件,就像你说的那样 - 但是恐怕就像你在PHP和JavaScript通信方面一样多。