You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Next.js(React)通过Axios提交数据至PHP,插入值为NULL问题排查

排查方案
  • 确认前端数据有效性
    在调用axios.post前添加console.log(userData),查看state.name和state.job是否已获取到非空的有效值。如果这两个字段本身就是undefined或null,后端自然无法拿到正确数据。

  • 显式设置请求Content-Type
    Axios发送JSON对象时默认会携带application/json头,但部分环境下可能丢失。可以手动指定请求头确保后端能正确识别数据格式:

    axios.post("https://diggdevelopment.com/openc/api/testinfo", userData, {
      headers: {
        'Content-Type': 'application/json'
      }
    }).then((response) => {
      alert(response);
    });
    
  • 后端调试接收数据
    在PHP代码开头添加var_dump($_POST); exit;,查看解析后的$_POST数组是否包含name和job字段。如果是空数组,说明file_get_contents("php://input")未读取到有效JSON,或JSON解析失败。

  • 增加JSON解析容错处理
    为避免解析失败导致后续取值出错,可添加判断逻辑:

    $input = file_get_contents("php://input");
    $_POST = json_decode($input, true);
    if ($_POST === null) {
        error_log("JSON解析失败,原始请求数据:".$input);
        exit;
    }
    $name = isset($_POST['name']) ? $_POST['name'] : '';
    $job = isset($_POST['job']) ? $_POST['job'] : '';
    
  • 检查数据库字段配置
    确认test表的name和job字段是否设置了NOT NULL约束。如果字段不允许为空,但传入值为空,数据库可能会自动插入NULL(不过这种情况通常会触发插入失败,优先级靠后排查)。


内容的提问来源于stack exchange,提问作者amit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 07:20:36