我最近才开始使用Angular,但我仍有一些困难......
我似乎无法使用我的角度数据更新我的数据库,但是我可以从我的数据库中获取数据。
这是我想要尝试发布数据的代码。
$scope.submit = function(infographic){
var data = {
id: infographic.PK_InfoID,
label: infographic.label,
value: infographic.value
};
console.log(data);
$http.put("dataout.php", data).success(function(data) {
console.log(data);
});
};
这是我使用的PHP:
if(isset($_POST['id'])){
$id = $_POST['id'];
$label = $_POST['label'];
$value = $_POST['value'];
$query = "UPDATE tblInfo SET label = '".$label"', value = '".$value"' WHERE PK_InfoID = '$id'";
mysql_query($query);
}
有人能帮助我吗?
THX
答案 0 :(得分:1)
Angular会将请求数据作为json编码的字符串发送。
$_POST为空。使用类似:
<?php
$data = json_decode(file_get_contents('php://input'), true);
if (json_last_error() === JSON_ERROR_NONE) {
// use $data instead of $_POST
print_r($data);
}
在接收方。
答案 1 :(得分:0)
调试PHP文件:
file_put_contents('/tmp/postContents.txt', print_r($_POST, true));
这将告诉您PHP脚本是否收到您期望的数据。
另外:确保您没有创建SQL注入安全问题。你应该转义值($ label等)。 Google“sql injection php”获取信息。