[英]pass value to another php using ajax and javascript object..?
當我嘗試對json.stringify 數據進行json_decode時 , 它返回NULL,因此使用** json_last_error來了解該錯誤,並返回了以下錯誤消息
語法錯誤,JSON格式錯誤
任何人都可以驗證我包含在javascript函數中的ajax代碼並發現已完成的錯誤。
下面是腳本代碼
<script>
function callphp(){
var dataa = {};
dataa.dateipone = jQuery("#dateInputone").val();
dataa.dateiptwo = jQuery("#dateInputtwo").val();
dataa.ino = jQuery("#ino").val();
dataa.submit = "submit";
alert("Hello")
$.ajax({
url : "six-cuf.php",
type: 'POST',
data :JSON.stringify(dataa),
contentType : "application/json; charset=utf-8",
success:function(data)
{
if(data){
alert(data);
//console.log("Data from Server"+JSON.stringify(data));
}
else{
console.log("Data is empty");
}
},
error: function(xhr) {
alert('Error! Status = ' + xhr.status + " Message = " + xhr.statusText);
//console.log('Error! Status = ' + xhr.status + " Message = " + xhr.statusText);
}
});
}
下面是6-cuf.php
$data = json_decode($_POST['dataa']);
print_r($data);
switch (json_last_error()) {
case JSON_ERROR_NONE:
echo ' - No errors';
break;
case JSON_ERROR_DEPTH:
echo ' - Maximum stack depth exceeded';
break;
case JSON_ERROR_STATE_MISMATCH:
echo ' - Underflow or the modes mismatch';
break;
case JSON_ERROR_CTRL_CHAR:
echo ' - Unexpected control character found';
break;
case JSON_ERROR_SYNTAX:
echo ' - Syntax error, malformed JSON';
break;
case JSON_ERROR_UTF8:
echo ' - Malformed UTF-8 characters, possibly incorrectly encoded';
break;
default:
echo ' - Unknown error';
break;
}
if(isset($_POST["dateipone"],$_POST["dateiptwo"],$_POST["ino"],$_POST["options"],$_POST["dateone"],$_POST["datetwo"],$_POST["submit"]))
{
//php code
}
在dateipone,dateiptwo和dateone,datetwo ...中,該對的值將為空。
在傳遞給服務器之前,無需將任何內容編碼為json。 您可以傳遞普通的javascript對象,其余的將由瀏覽器完成:
var dataa = {};
dataa.dateipone = jQuery("#dateInputone").val();
dataa.dateiptwo = jQuery("#dateInputtwo").val();
dataa.ino = jQuery("#ino").val();
dataa.submit = "submit";
$.ajax({
url : "six-cuf.php",
type: 'POST',
data: dataa,
// no content-type here!
success:function(data) {
}
});
在服務器端照常檢查$_POST
數組:
print_r($_POST);
// you will have keys: `dateipone`, `dateiptwo`, `ino` and `submit` in it
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.