我试图将我的 SQL 数据库中的每一行显示为一个有 Angular 的卡片。相反,我的代码将每个字符显示为一张卡片:( 我是 PHP 新手,有什么建议吗? 这是我的索引文件中的一个片段
<md-card style="width: 32%;" ng-repeat="item in frats track by $index">
<md-card-content>
{{item}}
这是我的 php 文件的一个片段
$query = "SELECT * FROM house_info";
mysqli_query($db, $query) or die('Error querying database.');
$result = mysqli_query($db, $query);
$row = mysqli_fetch_array($result);
while ($row = mysqli_fetch_array($result)) {
echo $row['name'];
}
这是我的 js 文件中的一个片段
$http.get('../phptestworkhere.php').success(function(data) {
$scope.frats = data;
});
这是一个现在看起来像的例子。您可以看到前 5 张牌拼出了“Alpha”。这应该在一张卡片上。 example
最佳答案
我不经常使用 Angular,但根据你的描述,我认为你的问题是你的响应只是一个正在迭代的长字符串,基本上使每个字符成为一个数组元素。
要解决这个问题,请将您当前的 while
循环替换为:
$frats = array();
while ($row = mysqli_fetch_array($result)) {
$frats[] = $row['name'];
}
echo json_encode($frats);
这将使响应成为一个 Javascript 字符串数组,而不仅仅是一个字符串,这样您就可以按预期进行迭代。
关于php - Angular 显示 php MySQL 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46942161/