2016-05-30 9 views
0

Ich brauche deine Hilfe Ich lerne angularjs. Ich habe gelernt, wie man 1 Artikel in der Datenbank speichert, ich möchte weiter gehen und mehr als 1 Artikel speichern, aber ich konnte nichts im Internet finden, das mit angularjs zu tun. ist es nicht möglich, es in angularjs zu tun? . zu erklären, was im Denken der ich den Code auf Plunkerangularjs Liste der Artikel (Schüler) in der Datenbank speichern

http://plnkr.co/edit/sF3mBOcDilhQDQKYqeE7?p=preview

script.js

hinzugefügt
var app = angular.module('multi', []); 
app.controller('MainCtrl', function ($scope) { 
    $scope.students = [{ 
     'firstname' : $scope.user_name, 
     'lastname' : $scope.lastname, 
     'bday':$scope.bday, 
     'bplace':$scope.bplace, 
     'sex':$scope.sex 
    }]; 

$scope.addNewStudent = function() { 
var newItemNo = $scope.students.length+1; 
$scope.students.push({'id':'student'+newItemNo}); 
}; 

$scope.removeStudent = function() { 
var lastItem = $scope.students.length-1; 
$scope.students.splice(lastItem); 
}; 

$scope.save = function() { 
    $http.post('db.php?action=addStudent', 
     { 
     'firstname' : $scope.firstname, 
     'lastname' : $scope.lastname, 
     'bday':$scope.bday, 
     'bplace':$scope.bplace, 
     'sex':$scope.sex 

    }); 
}; 
}); 

so nach den Informationen der Anzahl der Schüler füllen möchte ich den Speichern Knopf klicken speichern alle Student zu meiner Datenbank. Wenn es möglich ist, kannst du mir bei diesem Problem helfen. Danke

+0

einfachste Weg, um eine Schleife über $ scope.students in Ihrer Save-Funktion wäre und senden Sie eine Post-Anfrage für jeden. – theatlasroom

Antwort

0

Ihr aktuelles Problem ist, dass Sie Werte aus dem $scope verwenden, wenn Sie speichern, so dass Sie nicht mehrere Schüler gleichzeitig speichern können.

Sie sollten das Array $scope.students verwenden, das Sie bereits haben.

Ich habe Ihren Plünderer ein wenig modifiziert (nur das Javascript), das sollte für Ihre Bedürfnisse funktionieren.

http://plnkr.co/edit/T8qM1YCKBFmZbknWZ2n2

ich viel nicht geändert hat, habe ich meistens die $http.post in einer Schleife. Ich würde normalerweise empfehlen, eine Serverroute zu verwenden, die mehrere Objekte behandelt, aber nicht über Ihren Server weiß, das ist das Beste, was ich tun kann, um es einfach und funktional zu halten.

2 weitere Bemerkungen:

  • Sie die student.sex an den Server senden, aber es kann nicht in Form eingestellt werden.
  • Sie last im HTML-Formular und lastname in der Funktion speichern zu verwenden, müssen Sie entweder verwenden, die Sie an beiden Orten wählten
+0

vielen dank für ihre hilfe –

Verwandte Themen