2016-10-10 8 views
1

Daten können nicht aus der PHP-Datei abgerufen werden.

php

require 'dbconnect.php'; 

$array_data = array(); 
$query = "SELECT * FROM user"; 

$stmt = $conn->prepare($query); 
$stmt->execute($array_data); 
$result_data = $stmt->fetchAll(PDO::FETCH_ASSOC); 

if(!empty($result_data)) {  

    header('Content-type: application/json'); 
    $json = json_encode($result_data); 
    // echo $json; 
    echo preg_replace("/null/", '""', $json); // replace null to "" 

} 

controller.js

.controller('tableCtrl', function($filter, $sce, ngTableParams, tableService) { 

     var data = tableService.data 
    //Editable 
     this.tableEdit = new ngTableParams({ 
      page: 1,   // show first page 
      count: 10   // count per page 
     }, { 
      total:data.length, // length of data 
      getData: function($defer, params) { 
       $defer.resolve(data.slice((params.page() - 1) * params.count(), params.page() * params.count())); 
      } 
     }); 
    }) 

script.js

.service('tableService', ['$http', function($http){ 

     this.data = $http.get("data/timesheet.json") 

    }]) 

html

<table ng-table="tctrl.tableEdit" class="table table-striped table-vmiddle"> 
     <tr ng-repeat="w in $data" ng-class="{ 'active': w.$edit }"> 
      <td data-title="'ID'"> 
      <span ng-if="!w.$edit">{{ w.id }}</span> 
      <div ng-if="w.$edit"><input class="form-control" type="text" ng-model="w.id" /></div> 
      </td> 
      ... 
     </tr>       
    </table> 

Wenn ich JSON-Daten in service.js wie this.data = [{..}] einfüge, funktioniert es, aber jetzt versuche ich nur, Daten aus der PHP-Datei zu holen, die nicht funktioniert und leere Tabelle bekommt. Kann mir jemand helfen, was hier fehlt? Ich bin sehr neu in AngularJS. diese

+0

"versuchen, Daten von PHP zu ziehen" - nein, Sie ziehen Daten von einigen JSON – k102

+0

können Sie uns zeigen, wie die Daten aus der PHP-Datei zurückkommt. Ich würde vorschlagen, dass dies keine Winkelfrage ist. – defaultcheckbox

+0

@defaultcheckbox Sorry, aber ich habe Ihre Frage nicht erhalten. Ich habe meinen PHP-Code hinzugefügt. Und ja, ich habe versucht, json-Datei, die statische JSON-Daten enthalten, aber das gleiche Problem mit dem auch – DD77

Antwort

0

Versuchen ...

.service('tableService', ['$http', function($http){ 
    this.data = $http.get("yourphpfile.php"); 
}]) 

dann

.controller('tableCtrl', function ($filter, $sce, ngTableParams, tableService) { 
    this.tableEdit = {}; 
    tableService.data.then(initNgTable); 

    function initNgTable(data) { 
     this.tableEdit = new ngTableParams({ 
       page : 1, // show first page 
       count : 10 // count per page 
      }, { 
       total : data.length, // length of data 
       getData : function ($defer, params) { 
        $defer.resolve(data.slice((params.page() - 1) * params.count(), params.page() * params.count())); 
       } 
      }); 
    } 
}) 

Hoffnung das wird Ihnen helfen !!

+0

Es funktioniert nicht – DD77

+0

Haben Sie debuggen? Wo hast du das Problem gesehen? –

+0

User7 .. können Sie uns nur das Format des JSON zeigen? oder vielleicht einen Blindgänger mit Dummy Json. Ich denke nicht, dass wir genug Informationen haben, um herauszufinden, was falsch ist. – defaultcheckbox