只获取一个记录在mysql数据调用(角度slimphp)
问题描述:
我想使用slim php框架作为一个角度前端的宁静后端。 我有问题从我的sql数据库中提取所有记录。 我使用下面的代码在我的控制器:只获取一个记录在mysql数据调用(角度slimphp)
在我厂function refreshlistings() {
Data.get('getAllListings').then(function(results) {
$scope.lists = results;
var tempdata;
for (var i = 0; i < $scope.lists.length; i++) {
$scope.lists[i].data = decrypt($scope.lists[i].data);
}
if (!$scope.lists) {
$scope.lists = [];
}
});
}
:
obj.get = function(q) {
return $http.get(serviceBase + q).then(function(results) {
return results.data;
});
};
我的苗条API看起来是这样的:
$app->get('/getAllListings', function(){
$db = new DbHandler();
$listings = array();
$listings = $db->getAllRecords("select * from LISTINGTABLE");
echoResponse(200, $listings);
});
我DbHandler类
:
public function getAllRecords($query) {
$r = $this->conn->query($query) or die($this->conn->error.__LINE__);
return $result = $r->fetch_assoc();
}
我只从SQL获取一条记录。
我想:
public function getAllRecords($query) {
$r = $this->conn->query($query) or die($this->conn->error.__LINE__);
while ($row = $r->fetch_array(MYSQLI_ASSOC)) {
$data[] = $row;
}
return $data[];
}
在我DbHandler类,但是这给了我一个错误。 任何人都可以帮我吗?谢谢!
答
您只需要一行。如果您使用的PDO,你可以这样做:
$q = $db->query("SELECT ... "); $results = $q->fetchAll();
如果你使用的mysqli,则必须遍历结果集并分配行的数组。
此外,我在您的代码中看到您返回$ data []。你应该返回$数据。
很酷,是的,使用$ data解决了它!谢谢! – 2014-11-02 14:22:44