使用jQuery检索PHP变量


Retrieving a PHP variable with jQuery?

如何从jQuery中检索PHP变量?如果我使用jQuery POST函数,如:

$.post("login.php", {username:username, password:password}, function(data){
    $('section').html(data);
});

而不是显示'数据'是有可能显示从PHP文件到输出的某个PHP变量?

login.php:

<?php
echo 'hello';
然后,

将返回hello作为ajax调用中data变量的内容。JS不能直接访问PHP变量,除非PHP选择通过对ajax调用的响应输出这些变量的内容。如果需要传递多个变量/值,则使用JSON容器:

<?php
echo json_encode(array('hello' => 'there', 'how' => 'are', 'you' => '?'))

会给你3块数据('hello', 'how', 'you'),其中包含'there', 'are'和'?分别的。您可以将它们访问为data['hello'], data['how'], data['you']

示例中的"data"就是PHP脚本返回的内容。因此,如果您愿意,您可以很容易地返回(通过打印)您感兴趣的值。

例如,如果你的login.php脚本只需要返回"TRUE"或"FALSE",如果他们成功登录,那么在你的PHP脚本中只需说:

 if (logged in correctly) 
   print "TRUE";
 else
   print "FALSE";

然后在你的jQuery中,测试一下"data"是TRUE还是FALSE,如下所示:

  if (data == "TRUE") {
    // do stuff.
  }

如果你试图返回不止一个值,那么我建议你在PHP和jQuery中使用JSON对象,但我将把这些细节留给其他海报…

var jQueryVarFromPhP = <?=$phpVariable;?>;

我的两便士