如何从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;?>;
我的两便士