Metoda $http.post() nie wysyła wyników

0

Czesc bawie sie w post w angularze i za cholere nie chce wyslac wynikow do sciezki ktora mu podaje. A oto kod. To bylo tylko proba stworzenia, wiec prosze mi nie mowic o mvc - walnalem wszystko w jedno, zeby zobaczyc czy w ogole dziala.

<!DOCTYPE html>
<html ng-app = "app">
<head>
<title>Title of the document</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://code.angularjs.org/1.3.15/angular.min.js"></script>
	<script>

		angular.module('app', [])
		.controller("ctrl", function($scope, $http){
		
		$scope.todos = [];
		$scope.new_todo = '';
			$http.get('http://localhost:8000/project3/php/files.php').success(function(data){
				$scope.todos = data;
			});
			
			/*
			<-- TEN EVENT DZIALA -->
			
				$scope.search = function(event){
			
			if (event.keyCode == 13 ){

				alert($scope.testModel);  
					$scope.testModel = ' ';
				}
			}
			*/
			
			$scope.add = function(event){
			
			if (event.keyCode == 13 ){
				$http.post('http://localhost:8000/project3/php/files.php', {firstname: $scope.new_todo  }).success(function(data){
					$scope.todos = data;
				});
			}
			}
			
		});
	</script>
</head>

<body ng-controller="ctrl">

	<div ng-repeat="e in todos">
		{{e.filmname}}
	</div>
	<input ng-model="new_todo" ng-keyup="add($event)"/>
	<!--
	<input ng-model="testModel" ng-keyup="search($event)"/>
	-->
</body>

</html>
0
<body ng-controller="ctrl">
 
    <div ng-repeat="e in todos">
        {{e.firstname}}
    </div>
    <input ng-model="new_todo" ng-keyup="add($event)"/>
    <!--
    <input ng-model="testModel" ng-keyup="search($event)"/>
    -->
</body>
 
</html>

Tez nie dziala.

0

Te mapowania to na pewno masz dobre? Bo jak na moje oko to podałeś jakieś lokalizacje do plików .php na serwerze, a nie mapowania API. Pokaż kod serwera.

0

A jaka jest odpowiedź z serwera?
Na ten moment spróbuj może tak:

$http.post('http://localhost:8000/project3/php/files.php', $scope.new_todo )
0

F**k, moj blad zmapowalem plik, ktory kod jedynie odczytywalem z bazy i konwertowal na json. Btw. jest mozliwosc, zeby angular potrafil sam tworzyc back-endowe funkcje i umieszczal cos do bazy, czy mimo wszystko music byc to napisane w jakims jezyku?

0

Angular jest framework'iem frontendowym i odpowiada za renderowanie danych z serwera i wyświetlanie ich użytkownikowi. Wszelkie dane, które lecą z frontu do bazy muszą przejść przez jakiś serwer backendowy. Skąd angular miałby wiedzieć jaką funkcję tworzyć i co ma ona robić? Tak się nie da, a nawet jeśli istnieją jakieś sposoby hackowania tego w ten sposób, to są one co najmniej debilne i niebezpieczne.
Stawia się jakiś REST'owy serwis, który porozumiewa się z bazą danych. Z tym serwisem porozumiewa się angularowa aplikacja i wszystko ma ręce i nogi.

0

Oki, dzieki za pomoc. Mial ktos moze doswiadczenie z java i php jesli chodzi o rest api? W polaczeniu z frameworkiem frontendowym. Na ktorym sie lepiej pracuje/szybciej/wydajniej ? Php znam nieco bardziej chociaz i tak to podstawy, ale zawsze cos. Javy ani troche.

0

To zależy ile masz czasu. Ze swojej strony powiem, że nauczenie się Javy i Springa, z któego bądź co bądź najlepiej korzystać do tworzenia web service'ów zajmie Ci dużo czasu, ale warto to zrobić. Natomiast jeśli już ogarniasz php i jakieś jego framework'i to powinno Ci być łatwiej się ich nauczyć i postawić sobie taki web service. Ogólnie nie ma różnicy czy zrobisz backend w jednym czy innym języku - ważne jest na tym etapie poznanie idei. Język to jakieś narzędzie, więc pracuj w czym Ci lepiej i wygodniej.

1 użytkowników online, w tym zalogowanych: 0, gości: 1