0
角度を使用してテーブルを表示しようとしていますが、表示されません。何かが間違っていますか?以下のコード。テーブルはソースコード内にありますが、内部には何も生成されません。私はAngularが初めてです。あなたはあなたの応答(response.data.records
)でdata
オブジェクトにアクセスする必要が角型SQL - 欠けているものがありますか?
フロントエンド
<div ng-app="musicApp" ng-controller="musicCtrl">
<table>
<tr ng-repeat="x in names">
<td>{{ x.Name }}</td>
<td>{{ x.SongArtist }}</td>
<td>{{ x.SongAlbum }}</td>
</tr>
</table>
</div>
<script>
var app = angular.module('musicApp', []);
app.controller('musicCtrl', function($scope, $http) {
$http.get("http://rhys-bennett.uk/AIDc3391265/includes/formatjson.php")
.then(function (response) {$scope.names = response.records;});
});
</script>
PHPバックエンド
<?php
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");
$result = $conn->query("SELECT song_name, song_artist, song_album FROM musictable");
$outp = "";
while($rs = $result->fetch_array(MYSQLI_ASSOC)) {
if ($outp != "") {$outp .= ",";}
$outp .= '{"Name":"' . $rs["song_name"] . '",';
$outp .= '"SongArtist":"' . $rs["song_artist"] . '",';
$outp .= '"SongAlbum":"'. $rs["song_album"] . '"}';
}
$outp ='{"records":['.$outp.']}';
$conn->close();
echo($outp);
?>
Whaaat?手動でJSON文字列を作成していますか?それはあまりにも誤りを起こしやすい人です。 PHPで適切な構造体を作成し、 'json_encode()'でエンコードしてください。 – vuryss
[json_encode()](http://php.net/manual/en/function.json-encode.php)関数があります。あなたは手でジョーソンを一緒に束ねる必要はありません、そうですか?また、ブラウザのネットワークコンソールを確認してください。あなたの要求は送られていますか?レスポンスは何ですか? –
ダイレクトに:問題はほぼ確実に手動でエンコードされたJSONです。代わりに、json_encodeの配列にレコードを置くだけです。 '$ json = []; while($ rs = $ result-> fetch_array(MYSQLI_ASSOC)){$ json [] = $ rs;}エコーjson_encode($ json); die(); ' –