将表单数据从Ionic插入MySQL DB并不起作用

时间:2016-08-30 19:41:05

标签: php mysql angularjs ionic-framework

好吧,我正在尝试使用PHP服务器将数据从Ionic表单插入MySQL数据库,我跟着this tutorial

但是当我尝试在数据库中插入数据时,它不起作用。

以下是代码:

insertProdutos.html



<ion-view title="Products" id="page4" class=" " ng-controller="DataCtrl">
    <ion-content padding="true" class="has-header">
      <form id="form-promocao" class="list " ng-submit="submit()">
          <p id="" style="margin-top:3px;color:#44729C;text-align:center;" class=" ">Entre com as informações do produto</p>
          <ion-list id="cadastro-promocao" class=" ">
            <a href="#"></a>
              <label class="item item-input " id="codigoDoProduto">
                  <input type="number" placeholder="Codigo de barras..." ng-model="data.codigo">
              </label>
              <label class="item item-input " id="nomeDoProduto">
                  <input type="text" placeholder="Nome do produto..."ng-model="data.nome_produto">
              </label>
			  <label class="item item-input " id="tipo_comercializacao">
                  <input type="text" placeholder="Tipo de comercializacao..."ng-model="data.tipo_comercializacao">
              </label>
              <label class="item item-input " id="Medida">
                  <input type="number" placeholder="Medida..." ng-model="data.medida">
              </label>
			  <label class="item item-input " id="Peso">
                  <input type="number" placeholder="Peso..." ng-model="data.peso">
              </label>
              <input class="button button-block button-positive" 
                    type="submit" name="submit" value="Submit to server" >
          </ion-list>
      </form>
    </ion-content>
</ion-view>
&#13;
&#13;
&#13;

controllers.js

&#13;
&#13;
.controller('DataCtrl', function($scope, $http) {
	$scope.data = {};
	
    $scope.submit = function(){
		
		var link="http://localhost/PHPserver/api.php"
	
	  $http.post(link, {id_produto: $scope.data.codigo, nome_produto: $scope.data.nome_produto, medida_produto: $scope.data.medida, peso_produto: $scope.data.peso, tipo_comercializacao: $scope.data.tipo_comercializacao}).then(function (res){
            $scope.response = res.data;
      });  
		   
    }; 
});
&#13;
&#13;
&#13;

api.php

&#13;
&#13;
<?php  
	
	if (isset($_SERVER['HTTP_ORIGIN'])) {
        header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");
        header('Access-Control-Allow-Credentials: true');
        header('Access-Control-Max-Age: 86400');    // cache for 1 day
    }

    // Access-Control headers are received during OPTIONS requests
    if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {

        if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))
            header("Access-Control-Allow-Methods: GET, POST, OPTIONS");         

        if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))
            header("Access-Control-Allow-Headers:        
            {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");

        exit(0);
    }

   
    $postdata = file_get_contents("php://input");
	if (isset($postdata)) {
		include("connect.php");
		$request = json_decode($postdata);
		$codigo = $request->codigo;
		$produto = $request->nome_produto;
		$medida = $request->medida;
		$tipoComercializacao= $request->tipo_comercializacao;
		$peso = $request->peso;
		
		$sql="INSERT INTO produto(id_produto, nome_produto,peso,tipo_comercializacao,valor_medida) VALUES('".$codigo."','".$produto."','".$peso."','".$tipoComercializacao."','".$medida."')";
		
		if (mysqli_query($conn, $sql)) {
			echo "New record created successfully";
		} else {
			echo "Error: " . $sql . "<br>" . mysqli_error($conn);
		}
	}
?>
	
&#13;
&#13;
&#13;

当我在表单上插入数据并按&#34;提交给服务器&#34;时,没有任何反应,它没有提交,我在控制台日志中没有错误。

我会在此感谢一些帮助。 谢谢:))

0 个答案:

没有答案