A. 關於javaScript發送json字元串然後php怎麼接收,直接解決代碼
從你上圖中的代碼看,應該通過$_POST數組無法獲取發送的json字元串。你可以嘗試如下方式處理:
<?php
$arr=json_decode($HTTP_RAW_POST_DATA,true);//解析並返回一個數組給$arr
echo$arr['FirstName'];//嘗試輸出看下
B. php傳過來的json數據js怎麼調用
json對象中的屬性用 「.」(點)來指向訪問。
如:
jsonData是返回的json數據。
jsonData.username jsonData.id
這樣調用
C. php訪問資料庫得到數據然後用json傳給javascript
首先你要理解JSON的格式啊,
如一個用戶對象的JSON格式:{"username":"zhangsna", "sex":"男"};
如果是數組的話,就需要用[{"username":"zhangsna", "sex":"男"},{"username":"zhangsna2", "sex":"女"},...];
在了解了JSON的格式的時候,就可以來拼裝了:
如返回格式[userId, timePerMin, dateTime]格式就可以:
$arr[] =$UserID;
$arr[] =$timesPerMin;
$arr[] =$dateTime;
echojson_encode($arr);
如返回格式["userId":"", "timePerMin":"", "dateTime":""]格式就可以:
$arr["userId"] =$UserID;
$arr["timePerMin"] =$timesPerMin;
$arr["dateTime"] =$dateTime;
echojson_encode($arr);
D. php,JavaScript 如何讀取並修改json文件
先json_decode將json變成數組,數組比json字元串要好操作些吧
數組修改完畢後,再用json_ecode將數組轉為json字元串
最後存入資料庫
E. Javascript生成JSON怎麼和PHP交互
js生成的json發到伺服器上後,php接到之後本質上是一個字元串,可以用json_decode,將其轉換為php變數,
反之,php可以將自己的array等編碼為json(json_encode),然後發送給前端js處理。
F. php 怎麼將json 傳給js文件
在js中用Ajax發送數據給這個php,php處理之後把值返回給Ajax。如下:
$.Ajax({
type:'post',
url:'dologin.php',
data:'$("#uid").val()',
success:function(res){
alert(res);
}
})
這些js的意思是:用post方法把$("#uid").val()發送給dologin.假如$res是php處理完之後得到的數據,echojson_encode($res)這條代碼就是php中把得到的$res轉換成json格式並且返回給Ajax。
G. PHP如何利用json傳遞數組給javascript,一下代碼為什麼出錯
思路沒什麼問題,只是語法的問題啦,一步一步來
//1生產json字元串
<?php
$jsonStr=array('1'=>'a','2'=>'b');
$hello=json_encode($jsonStr);
?>
//2把字元串交給js!
<scriptlanguage="javascript"type="text/javascript">
functionredit(hell){
//在這里他還只是一個字元串,js不會認為他是一個json對象
varjson='<?phpecho$hello;?>';
//變身
varreal=eval("("+json+")");
alert(real[1]);
}
</script>
//3讀取
<inputtype="submit"value="edit"onclick="redit();">
你的代碼的問題是
1你用數字作為鍵的話,json會把它當作數組下標,你沒有0這個下標,所以讀不出來
2你將一個字元串直接傳進去,他並不是一個json對象,需要轉換
H. php如何接收js傳來的json對象
你無法傳json對象到服務端交互的,要傳的只是一個字元串(Json),是個字元串!
你發的代碼里是json的解析,沒有多大意義,你在php頁面這樣調試
var_mp($_REQUEST);//輸出所有數據,如果存在的話,你會看到那個參數是啥
另外,json格式,主要方便javascript解析的,而不是php擅長的內容,多數情況下,是PHP返回json數據給js.
php的數組操作函數有主要的兩個json_encode()與json_decode();
從你的代碼中,我不確定你用何種方式通信,ajax?
我看你用到了jQuery,那裡面有個ajax,方式類似這樣的:
$.ajax({
type:"post",//method;canbegetwithpostorrequest
url:"/mySever.php",//phpurl
error:function(){alert('Error');},
data:{
data1:name,
data2:age,
},
datatype:"json",//jsonback
timeout:5000,
success:function(msg)
{
//eval(msg);//parasehere
}
});
returnfalse;
}
I. php怎樣使數據轉化為JSON格式與JS進行交互
簡單...
<?php
$array = array(1, 2, 3, 4, 5);
$result = json_encode($array);
?>
<script type="text/javascript">
var data = <?php echo $result ?>;
var result = (typeof data == 'string') ? JSON.parse(data) : data;
alert(result[0]); // 1
</script>
簡單說明...PHP中的json_encode將一個PHP數組轉化為Javascript可讀的數組形式. 然後定義一個Javascript變數接收這個數組. 需要注意的是代碼:
var data = (typeof data == 'string') ? JSON.parse(data) : data;
如果你使用Ajax接收PHP傳回來的結果. Ajax的responseText方法會將所有的結果返回成一個字元串, 這個時候你需要用Javascript的原生方法JSON.parse()將返回字元串轉換成JSON格式.
J. javascript用ajax向PHP傳json格式數據,在PHP文件中應該怎樣接
你傳送之前
alert(json.key)
看一下有沒有變為正確json數據。
也可以這樣
for(var
i
in
json){
alert(i+":"+json[i]);
}