我有一個數組,它填充了javascript代碼。我需要在點擊確認按鈕時在php端達到這個數組的值。所以,我使用下面的ajax post方法。它運行成功,我知道,因爲所有警報都可以成功運行。這是我的代碼的一部分。php側無法獲得jquery值
$('#firstConfirmButton').click(function(){
var my_json_val = JSON.stringify(ordersArray, null);
alert(my_json_val.toString());
$.ajax({
type: "POST",
url: "test.php",
data: my_json_val,
cache: false,
contentType: false,
async: false,
processData: false,
success: function(response){
//alert("---"+data);
alert("Settings has been updated successfully.");
alert(my_json_val);
alert(response);
window.location.reload(true);
}
});
});
另一方面,我有一個test.php頁面,它也包含使用上面的js代碼的「確認」按鈕。點擊這個按鈕時,我想回顯我用ajax發佈的數組的值。但我無法獲得PHP方面的價值。這是我的PHP代碼;
<?php
require("includes/db.php");
require("includes/functions.php");
session_start();
if (isset($_POST['firstConfirmButton'])) {
echo 'I am here'; //I can see only this row on php page
$my_json_encoded = $_POST['data'];
$my_json_val = json_decode($my_json_encoded);
echo $my_json_val; //nothing happens
}
這裏是我的html代碼確認按鈕;
<form role="form" method="post" action="starbucks.php">
<div id="firstConfirmButton">
<button type="submit" name="firstConfirmButton" id="firstConfirmButton" class="btn btn-primary btn-lg">Onayla</button>
</div>
那麼,是我的錯,請幫忙!
您是否嘗試過呼應$ _ POST [ '數據']? – Markai 2014-10-29 10:47:40
是的,你有沒有試過$ _POST ['data'],因爲$ _POST ['firstConfirmButton']不包含任何東西! – 2014-10-29 10:51:09
我想你不應該'JSON.stringify'對象在請求中傳遞給'data',或者使用PHP中的'json_decode()'從JSON字符串創建數據結構。 – pawel 2014-10-29 10:51:45