[AngularJS]AngularJS 的简单数据库搜索引擎

发布时间: 2017/4/16 12:30:57
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我试图使一个简单的搜索引擎在 AngularJS。我我的客户和我的服务器之间有沟通的问题。我试图遵循 w3schools 指南http://www.w3schools.com/angular/angular_sql.asp

这里是 home.php 机构︰

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js">      
</script> 
</head>

<body>
<div ng-app="myApp" ng-controller="customersCtrl"> 
<table>
    <tr ng-repeat="x in names">
        <td>{{ x.Name }}</td>
    </tr>
</table>
</div>

<script>
var app = angular.module('myApp', []);
app.controller('customersCtrl', function($scope, $http) {
    $http.get("server.php")
    .then(function (response) {$scope.names = JSON.parse(response.data.records);});

});

</script>

和在这里是 server.php:

<?php
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");
error_reporting(2);

$conn = new PDO('mysql:host=localhost;dbname=mygaloo;charset=utf8', 'root',    ''); 
$result = $conn->query("SELECT * FROM associations"); 
$outp = "";

while($donnees = $query->fetch()) 
{
    if ($outp != "") {$outp .= ",";}
    $outp .= '{"Name":"'  . $donnees["nom"] . '"}';
}

$outp ='{"records":['.$outp.']}';
$conn->close();


echo($outp);
?>

然而,我得到这个错误︰ angular.js:12520SyntaxError︰ 在位置 0 处的 JSON 意外令牌 u,任何想法吗?

解决方法 1:

好搞。阿伦 · 辛德答案是正确的但这个问题来自︰

while($rs = $result->fetch(MYSQLI_ASSOC)) {

所以在这里使用 MYSQLI 不去工作,很显然,我正在使用 PDO。 所以在这里完成的代码工作。 home.php:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />
    <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js">     
    </script> 
</head>

<body>
    <div ng-app="myApp" ng-controller="customersCtrl"> 
    <table>
        <tr ng-repeat="x in names"> <td>{{ x }}</td> </tr>
    </table>
    </div>

    <script>
    var app = angular.module('myApp', []);
    app.controller('customersCtrl', function($scope, $http) {   
            $http.get("server.php")
            .then(function (response) {
                $scope.names = response.data;
            }).then(function(response){
                console.log(response)
            })

    });
    </script>
</body>

server.php:

<?php
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");

$conn = new PDO('mysql:host=localhost;dbname=mygaloo;charset=utf8', 'root', ''); 
$result = $conn->query("SELECT * FROM associations"); 
$outp = [];
while($rs = $result->fetch()) {
    if ($outp != "")
    array_push($outp,$rs["nom"]);
}
$outp =json_encode($outp);
$conn = null;
echo($outp);
?>

非常感谢您的耐心等待大家 !

官方微信
官方QQ群
31647020