Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在同一页面上将变量从jQuery传递到PHP_Php_Jquery - Fatal编程技术网

在同一页面上将变量从jQuery传递到PHP

在同一页面上将变量从jQuery传递到PHP,php,jquery,Php,Jquery,请容忍我,我是PHP新手。我在同一页上混合使用了PHP和jQuery。我需要将变量从jQuery传递到PHP。我遇到的所有示例都描述了如何将变量传递到服务器上我不想要的PHP文件。到目前为止,我设法使用jQuery$.toJSON()将对象转换为JSON; 我的问题是:如果jQuery和php都位于同一个页面上,是否可以将jQuery数据传递给php代码 以下是我目前的代码: var myObject = {name: 'Tomas', age: 38}; var encoded = $.toJ

请容忍我,我是PHP新手。我在同一页上混合使用了
PHP
jQuery
。我需要将变量从
jQuery
传递到
PHP
。我遇到的所有示例都描述了如何将变量传递到服务器上我不想要的
PHP
文件。到目前为止,我设法使用jQuery$.toJSON()将对象转换为JSON; 我的问题是:如果
jQuery
php
都位于同一个页面上,是否可以将jQuery数据传递给php代码

以下是我目前的代码:

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

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

服务器->PHP->客户端(浏览器)->Javascript


因此,javascript不可能在同一页面上与PHP通信。你能做的就是像你说的那样使用Ajax调用服务器端文件——但我恐怕这是你在PHP和JavaScript通信方面所能做的最多了

简单回答否,因为PHP在页面加载之前就已经运行了。但是您可能会触发页面上变量的某种保存(会话/cookie等)。一个非常简单的解决方案是将您的php放入动态加载的图像或脚本中。您不能这样做。。php在服务器上运行,jquery在browserI上运行我知道php在服务器上运行,但我们仍然可以运行php函数,php数据在会话期间可用。