前端用$.ajax的post方法传JSON数据,后端PHP解析数据示例
更新:2021-09-23 18:55:16
人气:1434
来源:本站原创
A+
一、前端用$.ajax的post方法传JSON数据
//检测是否有网络 if (window.navigator.onLine) { $.ajax({ type: "POST", timeout: 5000, // 设置超时时间 url: "jiemu_test.php", contentType: "application/json", //如果提交的是json数据类型,则必须有此参数,表示提交的数据类型 //dataType: "json", //表示返回值类型,不必须 data: JSON.stringify({ "shebei_id": '<?=$var_shebei_id?>' }), success: function(jsonResult) { console.log(jsonResult) //异步计算是否有可以播放的内容,有就刷新,没有的话就在指定间隔时间再检查,这样的好处防止页面跳动 var give_strs = new Array(); //定义一数组 give_strs = jsonResult.split("|"); //字符分割 if (give_strs[0] == 'reload') { //指令要求强制更新 window.top.location.href = 'index.php?shebei_id=<?=$var_shebei_id?>'; } else if (give_strs[0] == 'have') { //有节目 if (give_strs[1] != '<?=$var_jiemu_dh?>') { //而且节目与当前不同 window.top.location.href = 'index.php?shebei_id=<?=$var_shebei_id?>'; } else { $("#ajax_num").val(0) //网络能,清0 $("#status").html("最后通讯时间:" + give_strs[2]); setTimeout("myscreen_reload()", <?=$var_xintiao ? >); } } else if (give_strs[0] == 'nohave') { $("#ajax_num").val(0) //网络能,清0 $("#status").html("最后通讯时间:" + give_strs[1]); setTimeout("myscreen_reload()", <?=$var_xintiao ? >); } }, // 例如以下错误: /Not Found/error/timeout error: function(data) { console.log("Error:" + data.statusText) setTimeout("myscreen_reload()", <?=$var_xintiao ? >); } }); } else { var n_str = "<span style=color:red>(无网络)</span>"; $("#status").html(n_str) setTimeout("myscreen_reload()", <?=$var_xintiao ? >); }
PHP后端处理AJAX传过来的JSON数据
$post_val=file_get_contents('php://input');//jq ajax的json数据用此方法接收 $post_str=json_decode($post_val, true); $var_shebei_id=$post_str['shebei_id'];// 设备ID echo "nohave|".$z_last_time; exit;
推荐的文章
随手记
PHP经验分享
- ● mysql错误:Foundoptionwithoutprecedinggroupinconfigfile
- ● PHP如何从一个数组数据列表中随机取其中的数值?
- ● PHP获取用户访问IP地址的5种方法
- ● PHP用imagerotate旋转图片和等比缩放压缩、添加水印
- ● php怎么把时间转成数字
- ● php与JavaScript的正则表达式使用方法是否一样?
- ● PHP中preg_match()和preg_match_all()正则表达式的用法区别
- ● PHP批量向百度主动推送URL加快收录的示例代码
- ● 使用PHP中3个神奇常量快速获取目录、文件名和行号
- ● PHP删除目录下指定时间天数前的文件