解决从PHP发送到Ajax的json数据

时间:2018-04-08 12:28:58

标签: php mysql ajax

我尝试将来自PHP和MySQL脚本的json编码数据传递回带有ajax脚本的页面。数据将有多行,即row1,row2等。我将数据传回页面,并希望在继续第二行之前解决第一行/第一行,依此类推。但我甚至无法解决一个问题。不仅网址看起来很奇怪而且#34; (而不是斜杠/我看到反斜杠和斜杠/),但如果我解决数据[1]或其他问题,我甚至无法获得单一结果。我过去曾尝试过几个帖子中的几个解决方案而没有任何成功。

这里的PHP部分工作正常:

$data = array();


 $query = "SELECT * FROM `episode_elements` WHERE eid = 1 ORDER BY rank";
 $result = mysqli_query($con, $query);
 $data = array();
 while($row = mysqli_fetch_array($result))
 {
    //echo $row['audio'];
    //printf ("%s (%s)\n",$row[0],$row[1],$row[2],$row[3],$row[4]);
    $data[0] = $row['audio'];
    $data[1] = $row['image'];
    $data[2] = $row['text'];
    $data[3] = $row['rank'];
    print json_encode($data);
 }

从这个脚本中获得结果显示了一个很好的结果:

["http:\/\/www.nasa.gov\/mp3\/581097main_STS-1_Dust-it-Off.mp3","https:\/\/cdn.pixabay.com\/photo\/2011\/12\/14\/12\/11\/astronaut-11080_960_720.jpg","NASA","1"]
["http:\/\/www.mostfreebies.com\/PatrioticNostalgicMusic\/music\/USAFB_TheStarSpangledBanner.mp3","https:\/\/cdn.pixabay.com\/photo\/2013\/01\/16\/05\/08\/flag-75047_960_720.jpg","Star Spangled Banner","2"]

但是你已经可以看到反斜杠了。但是当我将数据传回我的脚本时,我无法访问它。我看不到数据[0]或数据[1] [1]。

我该如何解决?坦率地说,JS和Ajax让我发疯。

 function load_data(limit, start)
 {
  $.ajax({
   url:"episode_content_load.php",
   method:"POST",
   dataType: 'json',
   data:{limit:limit, start:start},
   cache:false,
   success:function(data)
   {
    $('#load_data').append(data);
    alert(data[1]);
   }
  });
 }

虽然 $('#load_data')。追加(数据); 如果我不添加行数据类型,则可以使用:JSON,警报(数据) [1]); 没有向我显示任何内容。这很令人困惑,因为它似乎适用于类似职位的其他人。

如果您有任何想法,请告诉我。提前谢谢。

1 个答案:

答案 0 :(得分:0)

你试过数据[0] [1]吗?这是基于什么。纯粹的猜测。