[英]Incorrect Data Order Returned
我有一个MySQL数据:
我尝试使用jquery来获取它们:
$.post(
'../php/teacheradminfunction.php',
{'functions':'getBadgeImg','topicSkill':$('#selTeachAdminBadgeDeleteSkill').val()},
function(data) {
$.each(data, function( key, value ) {
alert( key + ": " + value.badge_path );
});
},'JSON'
);
我的PHP脚本:
$queryStmt = 'SELECT badge_path FROM badges WHERE badge_skill=:sqlSkill ORDER BY `index` ASC';
$queryPrepare = $dba_connect->prepare($queryStmt);
$queryPrepare->execute(array(':sqlSkill'=>$_POST['topicSkill']));
$queryResult = $queryPrepare->fetchAll(PDO::FETCH_ASSOC);
$queryPrepare->closeCursor();
echo json_encode($queryResult);
我的问题是我需要有正确的订单,我得到的是:
[{"badge_path":"..\\image\\badges\\Counting10_g.png"},{"badge_path":"..\\image\\badges\\Counting10_b.png"},{"badge_path":"..\\image\\badges\\Counting10_s.png"}]
预期结果 :
[{"badge_path":"..\\image\\badges\\Counting10_g.png"},{"badge_path":"..\\image\\badges\\Counting10_s.png"},{"badge_path":"..\\image\\badges\\Counting10_b.png"}]
您也可以选择Index或“ badge_rank”并将其用作key:value作为JSON而不是对象数组。
最简单的方法是将badge_path的索引更改为正确的顺序。
更改数据库中的索引值修改Counting10_s.png的索引值并将其设为2,同样将Counting10_b.png的索引值更改为3
由于您使用的是按索引排序,因此将根据索引值对行进行排序。 修改索引值将为您提供所需的输出
在数据库中提供适当的索引。 根据您的查询返回正确的记录。
index badge_rank
1 GOLD
2 SILVER
3 BRONZE
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.