发布于 5年前

Ajax传值后端php接收不到

前端 js 代码

 $.ajax({
            type:"POST",
            url:"event.php",
            data:{
                    "day1": Number(day1),
                    "mon1": Number(mon1),
                    "year1": Number(year1),
            },
            datatype: "json",
            success:window.open('event.php'),
     });

后端php代码

$day = $_POST["day1"];
var_dump($day);

前端调试过了传值没有问题,也会正确打开php文件,而后端无法接收,只显示day1未定义

问题分析

传值的时候使用的是 json,去掉这句 datatype: "json",后台就可以直接用$_POST获取到了;

如果非要用json形式传,在php这边接收时,选择用php输入流获取原始的输入内容,结果值还要用json_encode, 对变量进行 JSON 编码。

$.ajax 传递数据时,要注意返回值的类型,特别是json格式的,一定要注意转换

©2020 edoou.com   京ICP备16001874号-3