3

mysql database使用したデータを表示したいangularJSのですが、すべて無駄です。私のコードを確認して、どこが間違っているのか教えてください。

  <?php
    $host = "localhost"; 
    $user = ""; 
    $pass = ""; 
    $database = "abc";
    $con = mysql_connect($host,$user,$pass);
    if (!$con) {
        die('Could not connect: ' . mysql_error());
    }
    echo 'Connected successfully'; 
    mysql_select_db($database,$con);  
     //select
    $query = "SELECT * FROM `product`"; 
    $result = mysql_query($query) OR die(mysql_error()); 
    $arr = array();
    //now we turn the results into an array and loop through them. 
    while ($row = mysql_fetch_array($result)) { 
        $name = $row['name']; 
        $description = $row['description']; 
        //echo 'This is: ' . $name . ' ' . $description . "<br/>\n"
        $arr[] = $row;
    } 
    echo json_encode($arr);
?>

controllers.js

 function ProductListCtrl($scope,$http) {
    $http.get('php/connect.php').success(function(data) {
        $scope.products = data;
    });
    //$scope.orderProp = 'name';

}

index.html

    <html ng-app>
    <head>
        <script src="../angular-1.0.1.min.js"></script>
        <script src="js/controllers.js"></script>
    </head>
    <body>
    <ul ng:controller="ProductListCtrl">
        <li ng:repeat="product in products">
            {{product.name}}
        </li>
    </ul>
    </body>
</html>

を実行するindex.htmlと、結果が表示されない弾丸の無限のリストが表示されます。

どこが間違っているのですか?

4

1 に答える 1

1

ブラウザコンソールからJSONデータを取得できれば、Alexanderに同意します。

phpコードでこのようなことをして、名前と説明だけを取得したいと思います $arr[] = array('name' => $name, 'description' => $description);$arr[] = $row;

phpコードからhtmlの形式でエラーが返される可能性があり、$httpはこれを配列であるかのように引き離します。

お役に立てれば

-ダン

于 2012-08-22T19:43:08.283 に答える