【发布时间】:2014-06-12 12:31:55
【问题描述】:
我有一个使用 PHP 以 JSON 格式构建的 Web 服务。 Web 服务需要从两个不同的数据库中获取数据,
第一个带有表 posts1 的数据库
标识 |第一烷 |姓氏 |标题 |图片
第二个数据库与表posts2
标识 |经验 |名称 |公司|位置
这是我的代码
<?php
$connection1=mysqli_connect("localhost","root","",'json_data_db1');
$connection2=mysqli_connect("localhost","root","",'json_data_db2');
// queries for 1st connection
$query = "select firstname,lastname,title,url from posts where id='6'";
$sql=mysqli_query($connection1,$query) or die(mysql_error());
echo '{"posts": [';
while($row=mysqli_fetch_array($sql))
{
$firstname=$row['firstname'];
$lastname=$row['lastname'];
$title=$row['title'];
$url=$row['url'];
echo '{"firstname":"'.$firstname.'","lastname":"'.$lastname.'","title":"'.$title.'","image":"'.$url.'"},';
}
//echo ']}';
//echo '{"profession": [';
// queries for 2nd connection
$query = "select * from posts2 where id='6' limit 20";
$sql=mysqli_query($connection2,$query);
while($row=mysqli_fetch_array($sql))
{
$exp=$row['exp'];
$des=$row['des'];
$company=$row['company'];
$location=$ow['location'];
echo '{"experience":"'.$exp.'","designation":"'.$des.'","company":"'.$company.'","location":"'.$location.'"},';
}
echo ']}';
mysqli_close($connection1);
mysqli_close($connection2);
?>
得到的json数据是
{ “帖子”:[ { “名字”:“德维卡”, “姓氏”:“v”, "title": "海得拉巴", “图像”:“菊花.jpg” }, { “经验”:“软件工程师”, “职称”:“软件工程师”, “公司”:“顶尖”, “地点”: ”” }, ] }
我解析 JSON 数据的代码如下。
<script type="text/javascript">
$(function()
{
$(document).ready(function()
{
$.getJSON("json_data.php",function(data)
{
$.each(data.posts, function(i,data)
{
var div_data =
"<div ><table width='500' border='1'><tr><tr><td>"+data.firstname+"</td><td>"+data.lastname+"</td><td>"+data.title+"</td><td><img src='images/"+data.image+"' width='40' height='40'></td><td>"+data.experience+"</td><td>"+data.designation+"</td><td>"+data.company+"</td><td>"+data.location+"</td></tr></table></div>";
$(div_data).appendTo("#data_area");
});
}
);
return false;
});
});
</script>
<div id="data_area"></div>
它解析了名字,姓氏,标题和图像。但它不解析经验,名称,公司和位置。谁能帮我。
【问题讨论】:
-
我想这给了你两张桌子。一个填充了第一个数据库的信息,一个填充了第二个数据库的信息。这就是我阅读您的代码的方式。
-
是的。但它不显示来自第二个数据库表的数据
-
你的 json 输出不是一个有效的 json 在这里试试 jsonlint.com
标签: php jquery json database web-services