Vor Down-Abstimmung (Ich wollte die CRUD mit JSON-Datei und nicht die Datenbank implementieren)Einfacher CRUD mit AngularJS und PHP mit JSON-Datei für Speicher
Ich verwende den folgenden Code in Angular JS die senden form Daten zu PHP und von PHP wollte ich meine lokale JSON-Datei ändern.
ich unten bin vor gibt
- Die Formularwerte in der JSON-Datei als Null gehen
ich das Array jedes Mal Benutzer klickt auf die Schaltfläche Registrieren
<!DOCTYPE html> <html lang="en"> <head> <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.3/angular.min.js"></script> </head> <body ng-app="myApp"> <div ng-controller="myCtrl"> <form> <h2>Register Form</h2> <div> <label>First Name</label> <input type="text" ng-model="firstname" placeholder="First Name" required="required"> </div> <div> <label>Last Name</label> <input type="text" ng-model="lastname" placeholder="Last Name" required="required"> </div> <button ng-click='Register()'>Register</button> </form> <table> <tr> <th>First Name</th> <th>Last Name</th> </tr> <tr ng-repeat="data in usersData"> <td>{{data.firstname}}</td> <td>{{data.lastname}}</td> </tr> </table> </div> <script type="text/javascript"> var app = angular.module('myApp', []); app.controller('myCtrl', function ($scope, $http) { $scope.Register = function() { $http.post("misc.php", { 'firstname': $scope.firstname, 'lastname': $scope.lastname }).success(function (response) { $scope.usersData = response.users; }); }; }); </script> </body> </html>
anhängen möchten
PHP-Code
<?php
$file="misc.json";
$json = json_decode(file_get_contents($file),TRUE);
$first = $_POST['firstname'];
$last = $_POST['lastname'];
$json[$user] = array("first" => $first, "last" => $last);
file_put_contents($file, json_encode($json));
?>
aber sobald ich übermittle ich unter info für Ihre zweite Frage beantworten kann {"":{"first":null,"last":null}}
Aber ich wollte reale Werte senden und das JSON-Format Ich möchte als
[{
"first": "John",
"last": "Anderson"
},
{
"first": "Mike",
"last": "Langer"
}]
$ machen nicht gesetzt ist, Winkel leitet Daten roh so Sie müssen 'file_get_contents ('php: // input')' in PHP anstelle von POST verwenden oder die übergebenen Formulardaten in angular ändern. Sie müssen auch Ihre Entwicklungsumgebung so einstellen, dass alle Fehler angezeigt werden. Und schließlich stimmt Ihre erwartete Ausgabe nicht mit dem überein, was Sie von '$ json [$ user] = array (...' erhalten, es gibt Ihnen eine json-Datei mit '{" was auch immer $ user is ": [" first " : "jim", "last": "leirvik"]} '. – JimL