jSON jquery does not load


jSON jquery does not load

我想从Mysql数据库中获取数据而不刷新页面。我在technotip.com上找到了代码。fetch.php文件很好,并执行我想要的数据,看起来就像在technotip示例中一样。但是,当我加载index.html文件时,它没有加载任何内容。请帮帮我。

Php文件

<?php
    $fXg = 0;
    $fYg = 0;
    $fZg = 0;
    $alpha = 0.5;

    include '../connection.php';
    $data = mysql_query("SELECT * FROM Sensor1 WHERE id_wasp = 'Sensor1' and sensor='ACC'") 
    or die(mysql_error());
    $result = array(); 
    while($info = mysql_fetch_array( $data )) 
    {
        $acc = explode(";",$info['value']);
        $X = $acc[0];
        $Y = $acc[1];
        $Z = $acc[2];
        //low pas filter
        $fXg = $X * $alpha + ($fXg * (1.0 - $alpha));
        $fYg = $Y * $alpha + ($fYg * (1.0 - $alpha));
        $fZg = $Z * $alpha + ($fZg * (1.0 - $alpha));
        //Roll & Pitch Equations
        $roll  = (atan2(-$fYg, $fZg)*180.0)/M_PI;
        $pitch = (atan2($fXg, sqrt($fYg*$fYg + $fZg*$fZg))*180.0)/M_PI;
        $frameno = $info['frame_number'];

        array_push($result, array('pitch' => $pitch,
                                  'roll'  => $roll));

        //echo "$pitch<br />'n";
        //echo "$roll<br />'n";
        //echo "$frameno<br />'n";
    }
    echo json_encode(array("result" => $result));
    //print_r($result);
?> 

my_script.js

$(document).ready( function() {
done();
});
function done() {
  setTimeout( function() { 
  updates(); 
  done();
  }, 200);
}
function updates() {
 $.getJSON("fetch.php", function(data) {
   $("ul").empty();
   $.each(data.result, function(){
    $("ul").append("<li>Pitch: "+this['pitch']+"</li>
                    <li>Roll: "+this['roll']+"</li>
                        <br />");
   });
  });
}

index . html

<html>
<head>
<title>Fetch/Extract Data From Database: jQuery + JSON + PHP+ AJAX</title>
</head>
<body>
<ul></ul>
<script type="text/javascript" src="jquery-2.1.0.js"></script>
<script type="text/javascript" src="my_script.js"></script>
</body>
</html>

我刚刚在本地重新创建了您的问题,并发现了它的奇怪问题。以下行有语法错误:

$("ul").append("<li>Pitch: "+this['pitch']+"</li>

jQuery对换行符不满意,如果你把所有东西都放到一行中,去掉制表符和换行符,它工作得很好。

$("ul").append("<li>Pitch: "+this['pitch']+"</li><li>Roll: "+this['roll']+"</li><br />");