2014-03-18 100 views
0

我嘗試從JavaScript發送一個json對象數組到一個Php代碼。無法從php文件獲得響應。從Ajax發送Json數組到PHP

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文件具有下面的代碼

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

不要ü看不出什麼問題?

+0

什麼問題?你在控制檯中看到什麼? – SLaks

+0

你在控制檯中看到什麼?文件路徑/inviteProcessing.php是否正確? – rakeshjain

+0

「無法從PHP文件獲取響應」是什麼意思?空白頁?然後去查找錯誤(請參閱http://stackoverflow.com/tags/php/info調試白色屏幕)。否則,調試輸入。沒有人可以幫你解決這個問題。 –

回答

0

此前呼應你的輸出,嘗試...

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

結束請嘗試以下點。

  1. 首先檢查php文件的路徑是否正確。

  2. 然後在ajax調用中添加下面的行。

    類型: 'POST',

    數據類型: 「JSON」,//添加的dataType

    URL: '/inviteProcessing.php',

    數據:{myData的:的JSONObject},