2016-05-18 138 views
1

我正在學習angularjs,所以我試圖製作一個應用程序來列出mysql數據庫中的電影。表單的html頁面顯示良好,但是當我輸入數據時,它不會進入數據庫。爲什麼我不能使用angularjs將數據插入到mysql數據庫中

這裏是我的HTML表單

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<head> 
 
\t <title>Feeder Form</title> 
 
\t 
 
</head> 
 
<body> 
 

 
<div class="container" > 
 

 
\t <h3>Enter Movie Details </h3> 
 
\t \t <form action="" method="" ng-controller="MovieFeederCtrl" enctype="multipart/form-data" id="feeder_form" role="form" class="form-horizontal"> 
 

 
\t \t <fieldset> 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2" >Name:</label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <input class="form-control" size="" type="text" id="name" ng-model="name" ></div> 
 
\t \t \t \t </div> 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Release Date: </label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <input class="form-control" type="date" id="releaseDate" ng-model="releaseDate"> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 

 
\t \t \t 
 
\t \t \t 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2" >Genre: </label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <input class="form-control" type="text" id="genre" ng-model="genre" placeholder="Genre"> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Cast: </label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <textarea class="form-control" id="cast" ng-model="cast" placeholder="Cast"></textarea> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 

 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Parental Guidance:</label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <input class="form-control" type="text" id="parentalGuidance" ng-model="parentalGuidance"> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Directors:</label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <input class="form-control" type="text" id="directors" ng-model="directors"> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Producers:</label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <input class="form-control" size="" type="text" id="producers" ng-model="producers" placeholder="Producers"> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Plot: </label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <textarea class="form-control" id="plot" ng-model="plot" placeholder="Plot"></textarea> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Description: </label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <textarea class="form-control" id="description" ng-model="description" placeholder="Enter description"></textarea> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 
\t \t \t 
 
\t \t \t <div class="form-group"> 
 
\t \t \t \t <label class="control-label col-md-2">Writers: </label> 
 
\t \t \t \t <div class="col-md-10"> 
 
\t \t \t \t \t <input class="form-control" type="text" id="writers" ng-model="writers" placeholder="Writers"> 
 
\t \t \t \t </div> 
 
\t \t \t </div> 
 
\t \t </fieldset> 
 

 
\t \t <div class="form-group row"> 
 
\t \t <label class="control-label col-md-3"><input type="reset" value="Reset"></label> 
 
\t \t <label class="control-label col-md-3"><input type="submit" ng-click="submitmovie()" value="Submit"></label> 
 
\t \t </div> 
 

 

 
\t \t </form> 
 
</div>
這裏是我的控制器代碼

var movieControllers = angular.module('movieControllers',[]); 
 

 

 
movieControllers.controller('MovieFeederCtrl',function ($http, $scope) { 
 
\t $scope.submitmovie = function() { 
 
\t \t $http.post("submitmovie.php", {'name':$scope.name,'releaseDate':$scope.releaseDate,'coverShot':$scope.coverShot,'genre':$scope.genre,'cast':$scope.cast,'parentalGuidance':$scope.parentalGuidance,'directors':$scope.directors,'producers':$scope.producers,'plot':$scope.plot,'trailerLink':$scope.trailerLink,'description':$scope.description,'writers':$scope.writers}).success(function(data,status,headers,config) 
 
\t \t { 
 
\t \t \t console.log("Movie submitted successfully") 
 
\t \t }).error(function(data, status,headers,config) 
 
\t \t \t { 
 
\t \t \t \t console.log("An error occured"); 
 
\t \t \t }); 
 
\t }; 
 
});

這裏是我的submitmovie.php

<?php 
 
\t $data = json_decode(file_get_contents("php://input")); 
 

 
\t $name = mysql_real_escape_string($data->name); 
 
\t $releasedate = mysql_real_escape_string($data->releaseDate); 
 
\t $covershot = mysql_real_escape_string($data->coverShot); 
 
\t $genre = mysql_real_escape_string($data->genre); 
 
\t $cast = mysql_real_escape_string($data->cast); 
 
\t $parentalguidance = mysql_real_escape_string($data->parentalGuidance); 
 
\t $directors = mysql_real_escape_string($data->directors); 
 
\t $producers = mysql_real_escape_string($data->producers); 
 
\t $plot = mysql_real_escape_string($data->plot); 
 
\t $trailerlink = mysql_real_escape_string($data->trailerLink); 
 
\t $description = mysql_real_escape_string($data->description); 
 
\t $writers = mysql_real_escape_string($data->writers); 
 
\t 
 
\t mysql_connect('localhost','root',''); 
 
\t mysql_select_db(cinemapp); 
 

 
\t $insert = "INSERT INTO movies (name, releasedate, genre, cast, pguidance, producers, directors, plot, description, writers) VALUES ('".$name."', '".$releaseDate."', '".$genre."', '".$cast."', '".$parentalguidance."', '".$directors."', '".$producers."', '".$plot."', '".$description."', '".$writers."')"; 
 
\t $insert_success = query($insert); 
 
\t if($insert_success) 
 
\t { 
 
\t \t echo "Movie inserted"; 
 
\t } 
 

 
?>

我試圖用IF函數來檢查數據獲取到PHP的頁面,但到目前爲止,還沒有工作。 請你幫我看看這個問題

+0

是否擊中了服務器? –

+0

@AnikIslamAbhi點擊服務器是什麼意思? – Navish

回答

0

你需要存儲的mysql_connect的結果()調用是這樣的:

$conn = mysql_connect('localhost','root',''); 

這$康恩對象則需要這樣傳遞的請求mysql_query( )方法:

$insert_success = mysql_query($insert, $conn); 

您使用的query()方法來自不同的庫。即您正在混合來自不同庫的代碼。

您可以在這裏找到更多的信息: http://www.tutorialspoint.com/php/mysql_insert_php.htm

+0

我認爲你給我的語法不正確,因爲mysql_connect()中的最後一個參數應該是數據庫的密碼而不是數據庫的名稱。 – Navish

+0

你說得對。更新了答案。 –

相關問題