简体   繁体   中英

Send Array of Json from Ajax to PHP

I try to send an array of json objects from the javascript to a Php code. Unable to get a response from the php file.

function getData() {
    var jsonObject = [];
    var genderMenu = document.getElementById("gender");
    var levelMenu = document.getElementById("level");

    jsonObject[0]  = { 
        psid: document.getElementById("psid").value,
        fName: document.getElementById("fname").value,
        lName: document.getElementById("lname").value,
        gender: genderMenu.options[genderMenu.selectedIndex].value,         
    };

    for(var i = 1; i <= varCount; i++) {
        if(document.getElementById("fName"+(i))) {
            jsonObject[i] = {fName : document.getElementById("fName"+(i)).value,
            lName: document.getElementById("lName"+(i)).value, 

        };
        }
    }

    var jsonObjectString = JSON.stringify(jsonObject);
    var result = "";
    $.ajax({
        type: 'POST',
        url: '/inviteProcessing.php',
        data: {myData: jsonObject},
        success: function(response) {
                  if(response.success)
                    alert(response.message);
                  else
                    alert(response.message);
              }
    });

  alert(jsonObject);
}

Php File has the following code

<?php   
$input = $_POST['myData'];
$input_string = json_decode($input, true);
echo json_encode( array('success' => true, 'message' => $input_string) );
?>

Do u see any problem?

Prior to echoing your output, try...

header('Content-type: application/json');
echo $encodedjsonstring;
exit;

尝试将exitdie()放在php文件的末尾

Please try below points.

  1. First check if path of the php file is correct.

  2. Then add below line in ajax call.

    type: 'POST',

    dataType: "json", //add dataType

    url: '/inviteProcessing.php',

    data: {myData: jsonObject},

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM