在mysql数据调用(PHP)中仅获取一条记录
我正在尝试使用slim php框架作为角度前端的restful后端。 从sql数据库中获取所有记录时遇到问题。 我在控制器中使用以下代码:在mysql数据调用(PHP)中仅获取一条记录,php,angularjs,rest,slim,Php,Angularjs,Rest,Slim,我正在尝试使用slim php框架作为角度前端的restful后端。 从sql数据库中获取所有记录时遇到问题。 我在控制器中使用以下代码: function refreshlistings() { Data.get('getAllListings').then(function(results) { $scope.lists = results; var tempdata; for (var i = 0; i < $scope
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 = [];
}
});
}
我的slim 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(“选择…”);
$results=$q->fetchAll()代码>
如果使用mysqli,则必须遍历结果集并将行分配给数组
另外,我在代码中看到返回$data[]。您应该返回$data
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[];
}