Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angularjs向服务器发送空JSON(仅在IE 9及更高版本中)_Javascript_Php_Angularjs_Json_Internet Explorer - Fatal编程技术网

Javascript Angularjs向服务器发送空JSON(仅在IE 9及更高版本中)

Javascript Angularjs向服务器发送空JSON(仅在IE 9及更高版本中),javascript,php,angularjs,json,internet-explorer,Javascript,Php,Angularjs,Json,Internet Explorer,我的angularjs脚本有点问题。 我正在尝试将数据发布到服务器(PHP脚本将值保存到数据库)。 它在Chrome、Mozilla、Opera和其他浏览器中都能正常工作,但在IE中完全不行。我试过IE9、10和11(都没有附加组件),但仍然无法理解。 在IE中,我的angularjs只发布空JSON(类似{}) 这是我的angularjs POST脚本 $scope.submitForm = function() { // Posting data to php fi

我的angularjs脚本有点问题。 我正在尝试将数据发布到服务器(PHP脚本将值保存到数据库)。 它在Chrome、Mozilla、Opera和其他浏览器中都能正常工作,但在IE中完全不行。我试过IE9、10和11(都没有附加组件),但仍然无法理解。 在IE中,我的angularjs只发布空JSON(类似{})

这是我的angularjs POST脚本

$scope.submitForm = function() {

            // Posting data to php file
            $http({
                method  : 'POST',
                url     : 'ajax/newInvoice.php',
                data    : $scope.invoice, //forms user object
                headers : {'Content-Type': 'application/x-www-form-urlencoded'}                 
            })
                .success(function(data) {
                    getInvoices();
                    $scope.invoice = {items: [{qty: 1,description: '',cost: 0,taxPerc: 21}],odberatel: '',konecny_prijemce: '',datum_objednavky: new Date(),datum_vystaveni: new Date(),datum_splatnosti: new Date(),datum_zdanitelneho_plneni: new Date(),zpusob_uhrady: 'Platba kartou',dodaci_metoda: 'Osobní odběr'};           
                });
        };
这里是PHP

<?php

require_once '../includes/db.php'; // The mysql database connection script

$created = date("Y-m-d H:i:s", strtotime("now"));

$query = "SELECT id FROM ang_faktury ORDER BY id DESC";
$result = $mysqli->query($query) or die($mysqli->error.__LINE__);
$row = $result->fetch_assoc();

$last_invoice_id = intval($row["id"]);
$year = date("Y");
$month = date("m");
$idString = str_pad(($last_invoice_id + 1), 5, '0', STR_PAD_LEFT);//id faktury ang_faktury[id], ang_faktury_polozky[id_faktury]
$faCislo = 'OB/'.$year.'/'.$month.'/'.$idString; //cislo faktury ang_faktury[cislo_faktury]

$_POST = json_decode(file_get_contents('php://input'), true);

$dzp = $_POST['datum_zdanitelneho_plneni'];
$datum_zdanitelneho_plneni = substr($dzp, 0, 10);   
$dzpForm = date("d.m.Y", strtotime($datum_zdanitelneho_plneni));

$do = $_POST['datum_objednavky'];
$datum_objednavky = substr($do, 0, 10); 
$doForm = date("d.m.Y", strtotime($datum_objednavky));

$dv = $_POST['datum_vystaveni'];
$datum_vystaveni = substr($dv, 0, 10);  
$dvForm = date("d.m.Y", strtotime($datum_vystaveni));

$ds = $_POST['datum_splatnosti'];
$datum_splatnosti = substr($ds, 0, 10);
$dsForm = date("d.m.Y", strtotime($datum_splatnosti));

foreach($_POST['items'] as $item){      
    $sumPriceTotal += $item['priceTotal'];
    $query2="insert into ang_faktury_polozky (id_faktury,name,cena,ks,dph_proc,dph,total) values('$idString','$item[description]','$item[mjPrice]','$item[qty]','$item[taxPerc]','$item[taxSum]','$item[priceTotal]')";
    $mysqli->query($query2);
}

$spt = "{$sumPriceTotal}";
$cbd = (($spt*100)/121);
$dph = $spt - $cbd;

$query3="insert into ang_faktury (id,created_at,cislo_faktury,datum_zdanitelneho_plneni,odberatel,konecny_prijemce,zpusob_uhrady,dodaci_metoda,cislo_objednavky,datum_objednavky,datum_vystaveni,datum_splatnosti,cena_bez_dph,dph,celkem_k_uhrade) values('$idString','$created','$faCislo','$dzpForm','$_POST[odberatel]','$_POST[konecny_prijemce]','$_POST[zpusob_uhrady]','$_POST[dodaci_metoda]','$faCislo','$doForm','$dvForm','$dsForm','$cbd','$dph','$spt')";
$mysqli->query($query3);

mysqli_close($mysqli);
?>

发送
console.log(数据)
前检查数据, 并在从控制台(newInvoice.php)收到
print\r($\u POST)
(在myFile.php中)

后检查您的数据:

控制台(app.js)


你能试试“普通”的角柱吗<代码>$http.post('ajax/newInvoice.php',$scope.invoice,config.),然后(console.log)还请注意,最好将ajax调用/etc移出控制器并移入服务。不过,这不会影响它是否有效,只是改进了代码结构/关注点的分离。谢谢大家,我再次检查了我的代码,发现我调用了一些奇怪的函数,该函数会重新加载整个页面,但在数据发送到服务器之前:o)
Array
(
    [items] => Array
        (
            [0] => Array
                (
                    [qty] => 1
                    [description] => MIKI_01
                    [cost] => 10
                    [taxPerc] => 21
                    [priceTotal] => 10.00
                    [taxSum] => 1.74
                    [mjPrice] => 8.26
                )

            [1] => Array
                (
                    [qty] => 1
                    [description] => MIKI_02
                    [cost] => 20
                    [taxPerc] => 21
                    [priceTotal] => 20.00
                    [taxSum] => 3.47
                    [mjPrice] => 16.53
                )

        )

    [odberatel] => MIKI
    [konecny_prijemce] => 
    [datum_objednavky] => 2016-01-16T13:39:32.554Z
    [datum_vystaveni] => 2016-01-16T13:39:32.554Z
    [datum_splatnosti] => 2016-01-16T13:39:32.554Z
    [datum_zdanitelneho_plneni] => 2016-01-16T13:39:32.554Z
    [zpusob_uhrady] => Platba kartou
    [dodaci_metoda] => Osobní odběr
)
Object {items: Array[2], odberatel: "MIKI", konecny_prijemce: "", datum_objednavky: Sat Jan 16 2016 14:45:18 GMT+0100 (Central Europe Standard Time), datum_vystaveni: Sat Jan 16 2016 14:45:18 GMT+0100 (Central Europe Standard Time)…}
datum_objednavky: Sat Jan 16 2016 14:45:18 GMT+0100 (Central Europe Standard Time)
datum_splatnosti: Sat Jan 16 2016 14:45:18 GMT+0100 (Central Europe Standard Time)
datum_vystaveni: Sat Jan 16 2016 14:45:18 GMT+0100 (Central Europe Standard Time)
datum_zdanitelneho_plneni: Sat Jan 16 2016 14:45:18 GMT+0100 (Central Europe Standard Time)
dodaci_metoda: "Osobní odběr"
items: Array[2]
0: Object
$$hashKey: "object:4"
cost: 10
description: "MIKI_01"
mjPrice: "8.26"
priceTotal: "10.00"
qty: 1
taxPerc: 21
taxSum: "1.74"
__proto__: Object
1: Object
$$hashKey: "object:69"
cost: 20
description: "MIKI_02"
mjPrice: "16.53"
priceTotal: "20.00"
qty: 1
taxPerc: 21
taxSum: "3.47"
__proto__: Object
length: 2
__proto__: Array[0]
konecny_prijemce: ""
odberatel: "MIKI"
zpusob_uhrady: "Platba kartou"
__proto__: Object