在创建Web服务时,我遇到了一个不会返回错误的问题。我从mysql数据库中的表中获取数据,我只使用json_encode
。
问题是,当它显示结果时,它显示所有这些,就好像某些线条是不可见的。该查询在mysql中完美运行,但当它放在我的PHP代码中时,它似乎并没有按预期工作。
更准确地说,当某些值添加到传递给json_encode
的数组时,x线会消失,其中一个属性会使一切消失。
我从使用where
到joins
时重建了我的查询,但我仍然遇到同样的问题。我检查了值是否值(在查询结果和数组对象中分别显示它们并完美显示)
更新
select m.id , t.teamname HomeTeam, t2.teamname AwayTeam,
from matches m
inner join teams t on m.hometeam_id = t.id
inner join teams t2 on m.awayteam_id = t2.id
这是查询&在php文件中
while ($data = $result->fetch(PDO::FETCH_OBJ))
{ $tab_result = array();
$tab_result["MatchId"] = $data->id
$tab_result["HomeTeam"] = $data->HomeTeam;
$tab_result["AwayTeam"] = $data->AwayTeam;
json_encode($tab_result); }
现在这将显示一些数据,我无法弄清楚原因
结果示例
{"Matches":[{"MatchId":"1","HomeTeam":"Polen"}]}
{"Matches":[{"MatchId":"2","HomeTeam":"Rusland"}]}
{"Matches":[{"MatchId":"3","HomeTeam":"Nederland"}]}
{"Matches":[{"MatchId":"4","HomeTeam":"Duitsland"}]}
{"Matches":[{"MatchId":"6","HomeTeam":"Ierland"}]}
请注意,id 5不显示,只有空行没有错误 但是,如果例如我只填写所有将显示的Id,添加hometeam / awayteam或两者都会导致此
答案 0 :(得分:0)
解决了
isssue来自数据。
其中(据我猜测)它无法编码,因为它有一个像ë,ï等字符。