在JSON中使用php变量
我有一个查询,可以在在JSON中使用php变量,php,json,Php,Json,我有一个查询,可以在php文件中查找用户信息。我在同一个文件中使用json\u encode将数据发送到Ajax,以便可以使用.html()函数显示数据。 问题是,当我使用json\u encode时,php变量不起作用。 假设我的php如下所示:- foreach($pdo->query("SELECT * FROM Users WHERE ID='$id'") as $row) { $firstname = $row['FirstName']; $lastname =
php
文件中查找用户信息。我在同一个文件中使用json\u encode
将数据发送到Ajax
,以便可以使用.html()
函数显示数据。问题是,当我使用
json\u encode
时,php变量不起作用。
假设我的php如下所示:-
foreach($pdo->query("SELECT * FROM Users WHERE ID='$id'") as $row) {
$firstname = $row['FirstName'];
$lastname = $row['LastName'];
}
$fullname = $firstname . " " . $lastname;
$data = array("success"=> true,"inpt"=>"<p>My name is $fullname</p>");
echo json_encode($data);
header("Content-Type: application/json");
foreach($pdo->query(“从ID='$ID''的用户中选择*)作为$row){
$firstname=$row['firstname'];
$lastname=$row['lastname'];
}
$fullname=$firstname。" " . $姓氏;
$data=array(“success”=>true,“inpt”=>“我的名字是$fullname”;
echo json_编码($data);
标题(“内容类型:application/json”);
我得到的是->我的名字是
如何让它工作?
我尝试使用
$data=array(“u_data”=>“own”,“inpt”=>”我的名字是“$fullname”。”代码>但它不起作用。header()
只有在调用之前没有输出任何内容时才有效。因此,您应该交换echo
和header()
PHP字符串连接运算符是
(很好地修复了那里的代码。)
不过,您应该进一步改进代码逻辑。如果SQL查询没有结果,变量将未定义,您将得到意外的结果。您需要专门处理这种情况。您确定首先要获取您的名字和姓氏值吗?是的,我确定按照豪诚的建议交换最后两行。如果你看看ChromeDeveloper,你会非常清楚地看到服务器的响应。如果它响应有效的数据,那么你的javascript代码就被破坏了。好吧,你写的代码肯定是错误的,你需要修复它。如果除此之外还有其他问题,请使用var\u dump
进行调试,以检查发生了什么或没有发生什么,以及所有变量值是否符合预期。
header("Content-Type: application/json");
echo json_encode($data);
$fullname = $firstname . " " . $lastname;
^ ^