課程
/后端開發
/PHP
/JSON應用場景與實戰
在PHP中輸出的json數據,為什么這邊不能直接用,為什么要用eval()處理
2015-11-12
源自:JSON應用場景與實戰 2-1
正在回答
<script?type="text/javascript"> ????$("document").ready(function?()?{ ????????var?url?=?"server.php"; ????????var?data?=?{'inAjax':?1,?'do':?'checkMember',?'username':?'demo'}; ????????$.ajax({ ????????????url:?url, ????????????type:?'post', ????????????data:?data, ????????????dataType:?'json', ????????????success:?function?(res)?{ ???????????????? ????????????????//把json字符串轉換為js對象,用來調用數據 //????????????????var?jsonObj?=?JSON.parse(res); ????????????????$("#username").val(res.username); ????????????????$("#groupname").val(res.groupname); ????????????????$("#uid").val(res.uid); ????????????}, ????????????error:?function?()?{ ????????????????alert('請求異常'); ????????????} ????????}); ????}); </script>
這樣寫,就可以不用轉換了,都約定為json,直接調用就好
<?php error_reporting(0); $inAjax?=?$_POST['inAjax']; $do?=?$_POST['do']; $do?=?$do???$do?:?"default"; if?(!$inAjax) ????return?false; include_once?"db.class.php"; switch?($do)?{ ????case?"checkMember": ????????$username?=?$_POST['username']; ????????$sql?=?"SELECT?*?FROM?check_member?WHERE?username='$username'"; ????????$result?=?$dbObj->getOne($sql); ????????$resJson?=?json_encode($result); ????????echo?(!empty($result))????$resJson:?"null"; ????????break; ????case?"default": ????????die("nothing"); ????????break; }
返回的是個字符串,eval()的作用是將字符串強制轉換成對象
舉報
你還不知道JSON嗎,快快加入我們吧,通過學習加深對Json的理解
1 回答var jsonObj = eval("("+res+")"); 是什么意思
2 回答eval("("+res+")");有什么用啊,哪位懂了的解釋下,謝謝
3 回答為什么瀏覽器總說我的var re = eval("("+ data +")");有問題
2 回答var jsonObj =eval("("+res+")");
2 回答如何解決eval不安全的問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-10-15
這樣寫,就可以不用轉換了,都約定為json,直接調用就好
2015-12-20
返回的是個字符串,eval()的作用是將字符串強制轉換成對象