2016-09-30 130 views
-2

我有一個簡單的問題,但無法找到該錯誤。也許你可以幫忙。這裏是我的要求:阿賈克斯請求無函數

$http({ 
    url:'api/create_plane.php', 
    method: "POST", 
    data: { 
     planeKey: $scope.editKey, 
     planeSQLID: $scope.editSQLID, 
     planeLMID: $scope.editLMID, 
     planeAFID: $scope.editAFID, 
     planeVersion: $scope.editVersion, 
     planeLot: $scope.editLot, 
     planeStation: $scope.editStation     
    }, 
    dataType: 'json' 
}).success(function(data, status, headers, config) { 
    console.log(data); 
}, function(response) { 
    console.log(response); 
}); 

這是我的PHP文件:

$Planes = array(); 
$MAX_PLANES = 45; 

if (empty($_POST['planeLMID'])) { 
    for ($i = 1;$i < $MAX_PLANES;$i++) { 
     if (checkSQL($i)) { 
      $Planes[$i] = new createPlane($i,$db); 
     } 
    } 
    echo json_encode($Planes); 
} 
else { 
    for ($i = 1;$i < $MAX_PLANES; $i++) { 
     if ($Planes[$i]['planeSQLID'] == $_POST['planeSQLID']) { 
      echo "HALLO"; 
     } 
    } 
} 

但是我沒有看到"Hallo"在任何時間。我需要你的幫助。

+1

在'else'情況下'$ Planes'是__empty__ –

+0

前嗯,我來到了空面我收到的JSON編碼的回聲 – Kavkus

+0

您收到'回聲json'在另一個查詢 –

回答

0

create_plane.php當$ _POST ['planeLMID']爲空時,您嘗試使用empty $ Planes數組的文件。

因此,無論您是否通過POST接收數據,您都需要每次獲取$ Planes數組。 瞭解改create_plane.php

$Planes = array(); 
$MAX_PLANES = 45; 

for ($i = 1;$i < $MAX_PLANES;$i++) { 
    if (checkSQL($i)) { 
     $Planes[$i] = new createPlane($i,$db); 
    } 
} 
echo json_encode($Planes); 

if(!empty($_POST['planeLMID'])) { 
    for ($i = 1;$i < $MAX_PLANES; $i++) { 
     if ($Planes[$i]['planeSQLID'] == $_POST['planeSQLID']) { 
      echo "HALLO"; 
     } 
    } 
}