2017-03-11 46 views
0

我想发回一个JSON OBJECT,但数据取决于提交AJAX调用时发送的$ id变量,我如何在我的JSON字符串中使用此$ id变量并将其发送回JSON.parse ()?如何将AJAX中的PHP变量放入JSON中?

这基本上是我想干什么,我是新来的JSON

如何我想它是

$id = somenumber; 
echo '{"imageSrc":"assets/img/ . $id . .jpg","second":"radi"}'; 

那应该怎么当发送到JSON.parse()来

echo '{"imageSrc":"assets/img/2.jpg","second":"radi"}'; 

但我不能只是添加一个变量或其他任何东西,但纯文本到JSON?

当前页面的AJAX获取请求,要求 PHP

require_once '../includes/db.php'; 
require_once '../includes/functions.php'; 

$dbCon = dbCon(); 
define("SQL", "SELECT * FROM rating ORDER BY rand() LIMIT 1"); 
$result = $dbCon->query(SQL); 

while ($row = $result->fetch_object()) { 
    $id = $row->id; 

    //HOW DO I PARSE A VARIABLE INTO THIS JSON STRING BEFORE AJAX GETS IT?? 
    echo '{"imageSrc":"assets/img/2.jpg","second":"radi"}'; 
} 

编辑:json_encode()是一个PHP函数,dodes这得益于axiac的信息

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 

echo json_encode($arr); 
?> 
The above example will output: 

{"a":1,"b":2,"c":3,"d":4,"e":5} 
+5

'JSON'只是一些数据结构的文本表示。随意构建数据结构,然后使用PHP函数['json_encode()'](http://php.net/manual/en/function.json-encode.php)将文本发送回浏览器。 **不要手动生成JSON!** – axiac

回答

0
while ($row = $result->fetch_object()) { 
$id = $row->id; 

//in this way 
echo '{"imageSrc":"assets/img/'.$id.'.jpg","second":"radi"}'; 

}

php剂量不能代替var当你把它用单引号

$var = "some text"; 
echo 'hi $var'; //output : hi $var 
echo "hi $var"; //output : hi some text 

,或者你可以把你的数据的数组内,并将其转换成JSON像iable值这个

$arr = ["imageSrc"=>"assets/img/".$id.".jpg","second"=>"radi"]; 
echo json_encode($arr); 
相关问题