Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php AngularJS SyntaxError:JSON中位于位置0的意外标记_Php_Angularjs_Json_Codeigniter - Fatal编程技术网

Php AngularJS SyntaxError:JSON中位于位置0的意外标记

Php AngularJS SyntaxError:JSON中位于位置0的意外标记,php,angularjs,json,codeigniter,Php,Angularjs,Json,Codeigniter,我正在尝试使用angularJS+codeigniter进行分页,我有一个由“Cursos”调用的控制器和一个由“api”调用的函数来获取数据 函数api代码: $currentPage = $this->uri->segment(3); # Pagina atual $sizePage = $this->uri->segment(4); # Tamanho da pagina (num de itens que serão listados) $

我正在尝试使用angularJS+codeigniter进行分页,我有一个由“Cursos”调用的控制器和一个由“api”调用的函数来获取数据

函数api代码:

    $currentPage = $this->uri->segment(3); # Pagina atual
    $sizePage = $this->uri->segment(4); # Tamanho da pagina (num de itens que serão listados)
    $searchText = $this->uri->segment(5); # Argumento de pesquisa
    $offset = ($currentPage - 1) * $sizePage; // Obter o offeset da pagina para obter os resultados paginados
    $r = $this->cursos->obterCursos(0,$nomeCurso=null,"array",$sizePage,$offset);
    $array = array('DadosDosCursos' => $r, 'totalCount' => count($r));
    header('Content-Type: application/json');


    return $this->output
    ->set_content_type('application/json')
    ->set_status_header(200)
    ->set_output(json_encode($array));

    exit(json_encode($array));
结果看起来不错:

{"DadosDosCursos":[{"i_imc_ID":"2","i_imc_cargaHoraria":"40 horas","i_imc_categoriaIDS":"1,2","i_imc_dataCreated":"2017-02-20 11:36:36","i_imc_etapasAprendizagem":"Etapa 1\r\netapa 2","i_imc_imagemLogo":"web-design-criacao-de-sites_04042016162740.png","i_imc_imagemMiniatura":"imagepress-impressos-profissionais_05012016115837.jpg","i_imc_metaDescriptions":"meta description","i_imc_metaTags":"meta tags","i_imc_nome":"Nome do curso 2","i_imc_softwaresIDS":"1","i_imc_status":"1","i_imc_subtitulo":"Subtitulo aqui","i_imc_textoApresentacao":"Apresenta\u00e7\u00e3o"},{"i_imc_ID":"1","i_imc_cargaHoraria":"80 horas","i_imc_categoriaIDS":null,"i_imc_dataCreated":"2017-02-17 00:00:00","i_imc_etapasAprendizagem":"Etapa 1","i_imc_imagemLogo":"modelagem-com-3ds-max--v-ray--photoshop_04042016163311.png","i_imc_imagemMiniatura":"imageweb-criacao-de-sites_14122015100956.jpg","i_imc_metaDescriptions":"meta description","i_imc_metaTags":"meta tags","i_imc_nome":"Curso de desenvolvimento de sistemas","i_imc_softwaresIDS":"1","i_imc_status":"0","i_imc_subtitulo":"subtitulo","i_imc_textoApresentacao":null}],"totalCount":2}

我的angularJS控制器:

app.controller('activityTableCtrl', function($scope, $http) {

    $scope.currentPage = 1;
    $scope.totalItems = 0;
    $scope.pageSize = 10;
    $scope.searchText = '';
    getData();

    function getData() {
    $http.get('http://localhost/estudo/site/cursos/api/' + $scope.currentPage + '/' + $scope.pageSize
    //$http.get("../assets/api/database.json"
        )
        .then(function(data) {




            $scope.activity = [];
            $scope.totalItems = data.totalCount;
            $scope.startItem = ($scope.currentPage - 1) * $scope.pageSize + 1;
            $scope.endItem = $scope.currentPage * $scope.pageSize;

            if ($scope.endItem > $scope.totalCount) {
                $scope.endItem = $scope.totalCount;
            }

            angular.forEach(data.DadosDosCursos, function(temp){
                $scope.activity.push(temp);
            });

        });
    }

    $scope.pageChanged = function() {
        getData();
    }
    $scope.pageSizeChanged = function() {
        $scope.currentPage = 1;
        getData();
    }
    $scope.searchTextChanged = function() {
        $scope.currentPage = 1;
        getData();
    }
 })
我在console.log
SyntaxError:Unexpected token上遇到此错误 在位置0的JSON中


我尝试用JSON从另一个URL加载,一切都做得很好

这可能回答不了你的问题,但如果你只是替换了这个循环会更好:

angular.forEach(data.DadosDosCursos, function(temp){
                $scope.activity.push(temp);
            });
与:

因为您在开始时已经清空了
$scope.activity
数组,并且您没有修改
data.dadosCursos
;)中的任何条目结构

$scope.activity = data.DadosDosCursos