0

PHP で作成した JSON Web サービスに問題があります。echo $_GET['jsoncallback'].'('.json_encode($posts).')'; という行を含めると、JSON 内にゴミが入り続けます。それに加えて、行(いくつかの番号)で不明なインデックスのエラーが発生していますが、その行は $_GET['jsoncallback'].'('.json_encode($posts).')'; をエコーし​​ます。が表示されます。

その行を省略すると、JSON を取得しますが、無効なラベルのエラーが発生します

どうすればこの問題を解決できますか? 私のコードは以下です。

<?php
$link = mysql_connect('localhost','root','') or die('Cannot connect to the DB');
mysql_select_db('music_db',$link) or die('Cannot select the DB');

/* grab the posts from the db */
$query = "SELECT track.track_id, track.track_name, artist.artist_name, genre.genre_name FROM artist INNER JOIN (genre INNER JOIN track ON genre.genre_id = track.genre_id) ON artist.artist_id = track.artist_id";
$result = mysql_query($query,$link) or die('Errant query:  '.$query);

/* create one master array of the records */
$posts = array();
if(mysql_num_rows($result)) {
while($post = mysql_fetch_assoc($result)) {
  $posts[] = array('post'=>$post);
 }
}

/* output in necessary format */
header('Content-type: application/json');
echo json_encode(array('posts'=>$posts));
@mysql_close($link);
?>
4

1 に答える 1

0

使用しようとしているインデックスが設定されていないため、通知を受けています。使用する前に確認する必要があります。

if(isset($_GET['jsoncallback'])) {
  // Code here
}
于 2013-03-04T17:51:18.007 に答える