簡體   English   中英

角$ http.post()到達服務器,但不警告.success中的任何內容

[英]Angular $http.post() reach server but not alert anything in .success

我對角度代碼有一點問題。 我使用$ http.post將數據發送到php文件。 該php文件將數據保存到數據庫中。 您可以在下面看到我的控制器:

app.controller('send_data', function($scope, $http) {
    $http.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded; charset=UTF-8';
    $scope.data1 = "hello";
    $scope.data2 = "world";


    $scope.test_func = function() {
        data = {
            'data1' : $scope.data1,
            'data2' : $scope.data2
        };

    $http.post('server/file.php', data)
    .success(function()
    {
        alert("Success");
        console.log('success');
    })
    .error(function()
    {
      console.log('error');
    });

}

});

我使用ng-click從按鈕調用test_func。 我可以看到數據已保存到數據庫中,但是沒有出現帶有消息“成功”的彈出窗口。 到底是怎么回事?

先感謝您,

約翰

最終,我發現了問題所在,這是服務器端被遺忘的“回聲”。 刪除它,現在一切正常。

謝謝大家的幫助!

因此,上面的代碼可以正常工作,您還可以看到下面的php代碼:

<?php

header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json; charset=UTF-8");

function mysql_con()
{
    $servername = "localhost";
    $username = "user";
    $password = "admin";

    // Create connection
    $conn = new mysqli($servername, $username, $password);

    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    //echo "Connected successfully";
    return $conn;
}


$conn = mysql_con();


$postdata = file_get_contents("php://input");
$request = json_decode($postdata);
$data1 = $request->data1;
$data2 = $request->data2;


$sql = "INSERT INTO ext_db.test (data1, data2) VALUES ('".$data1."', '".$data2."')";

if ($conn->query($sql) === TRUE) {
    //echo "New record created successfully";
    $data = array('success' => true);
    echo json_encode($data);
} else {
//echo "Error: " . $sql . "<br>" . $conn->error;
    $data = array('success' => false);
    echo json_encode($data);
}

$conn->close();

?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM