构建网络应用程序:我的 AngularJS 文件中的数据不会显示在我的 HTML 文档中
Building a webapplication: Data from my AngularJS file won't display in my HTML document
请帮帮我,这段代码是我必须交的项目的关键部分,我找不到问题。
这是 GitHub 上文件的 link。
https://github.com/PouncingPoodle/LibApp
这个应用程序几天前在我大学的电脑上运行良好,但当我回到家时,我只更改了必须更改的路径,但现在该应用程序不再运行了。请帮忙!
所以我正在做的是:
我想使用 angularJS 在我的 html 文档中显示数据库中项目的一些详细信息。它显示 "Test before" 文本但不显示 "Test after",因此从 div 开始肯定有问题与 ng-repeat。我检查了 "book" / "books" / "info" 所有这些名称是否正确,所有路径是否正确。
这是我的html代码
<html ng-app="lib">
<div ng-controller="BooksController as books">
<p>Test before</p>
<div ng-repeat="book in (books.info | orderBy: 'title' | limitTo: 3)">
<p>{{book.id}}</p>
<p>{{book.genre}}</p>
<p>{{book.title}}</p>
<p>Test after</p>
</div>
</div>
scripts/dbcon.php
连接到数据库,获取信息并添加到数组 $results[]
$app->get('/book', function () {
// these details is correct on my computer
$bookDBconnect = mysqli_connect("localhost","root","","lib_db");
if (mysqli_connect_errno()) {
echo "Failed to connect to". mysqli_connect_error();
}
$result = mysqli_query($bookDBconnect,"SELECT * FROM books");
$results = array();
while ($row = mysqli_fetch_array($result))
{
$mybook = new Book;
$mybook->id = $row['id'];
//more fields
// this echo shows the correct details
//echo json_encode($mybook);
$results[] = $mybook;
}
echo json_encode($results);
mysqli_close($bookDBconnect);
});
$app->run();
scripts/app.js
从数据库中获取所有数据并将其发送到我的 "info" 以显示在我的 html
(function(){
var app = angular.module('lib', []);
app.controller('BooksController', ["$http", function($http)
{
var storage = this;
//this path is correct on my computer
$http.get("http://localhost/OW/idvProject6/scripts/dbcon.php/book").success(function(data)
{
storage.info = data;
});
}]);
})();
谢谢大家
好的,所以我发现了问题:
我在大学计算机上使用 Ampps,但在家里 Xampp。我现在在家里切换到 Ampps,错误消失了!基本上错误的是数据库密码,但使用 Xampp "mysql" 作为密码不起作用,但使用 Ampps 就可以了。如果数据库密码错误,我不知道为什么它仍然连接并通过回显发送数据,但不知何故它做到了。
我将工作应用程序上传到 github:https://github.com/PouncingPoodle/LibApp/tree/master/libapp
感谢大家的帮助。
请帮帮我,这段代码是我必须交的项目的关键部分,我找不到问题。
这是 GitHub 上文件的 link。 https://github.com/PouncingPoodle/LibApp
这个应用程序几天前在我大学的电脑上运行良好,但当我回到家时,我只更改了必须更改的路径,但现在该应用程序不再运行了。请帮忙!
所以我正在做的是: 我想使用 angularJS 在我的 html 文档中显示数据库中项目的一些详细信息。它显示 "Test before" 文本但不显示 "Test after",因此从 div 开始肯定有问题与 ng-repeat。我检查了 "book" / "books" / "info" 所有这些名称是否正确,所有路径是否正确。
这是我的html代码
<html ng-app="lib">
<div ng-controller="BooksController as books">
<p>Test before</p>
<div ng-repeat="book in (books.info | orderBy: 'title' | limitTo: 3)">
<p>{{book.id}}</p>
<p>{{book.genre}}</p>
<p>{{book.title}}</p>
<p>Test after</p>
</div>
</div>
scripts/dbcon.php 连接到数据库,获取信息并添加到数组 $results[]
$app->get('/book', function () {
// these details is correct on my computer
$bookDBconnect = mysqli_connect("localhost","root","","lib_db");
if (mysqli_connect_errno()) {
echo "Failed to connect to". mysqli_connect_error();
}
$result = mysqli_query($bookDBconnect,"SELECT * FROM books");
$results = array();
while ($row = mysqli_fetch_array($result))
{
$mybook = new Book;
$mybook->id = $row['id'];
//more fields
// this echo shows the correct details
//echo json_encode($mybook);
$results[] = $mybook;
}
echo json_encode($results);
mysqli_close($bookDBconnect);
});
$app->run();
scripts/app.js 从数据库中获取所有数据并将其发送到我的 "info" 以显示在我的 html
(function(){
var app = angular.module('lib', []);
app.controller('BooksController', ["$http", function($http)
{
var storage = this;
//this path is correct on my computer
$http.get("http://localhost/OW/idvProject6/scripts/dbcon.php/book").success(function(data)
{
storage.info = data;
});
}]);
})();
谢谢大家
好的,所以我发现了问题: 我在大学计算机上使用 Ampps,但在家里 Xampp。我现在在家里切换到 Ampps,错误消失了!基本上错误的是数据库密码,但使用 Xampp "mysql" 作为密码不起作用,但使用 Ampps 就可以了。如果数据库密码错误,我不知道为什么它仍然连接并通过回显发送数据,但不知何故它做到了。
我将工作应用程序上传到 github:https://github.com/PouncingPoodle/LibApp/tree/master/libapp
感谢大家的帮助。