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

如何在Angular的POST请求中向PHP传递多种数据类型

解决方案

你只需要把selectedButton和result一起打包到POST请求的参数对象中,Angular会自动把这些数据发送给PHP,这样就能在后端分别获取两个值了。

修改Angular代码

把原来的POST请求参数从只包含data的对象,改成同时包含data和selectedButton的对象就行:

function send(result, selectedButton) {
  console.log(selectedButton)
  // 将selectedButton加入到POST的参数对象里
  return $http.post(apiUrl + 'write_to_database.php', {
    'data': result,
    'selectedButton': selectedButton
  }).then(function(data){
    return $q.when(data);
  });
}

确认PHP代码

你原来的PHP代码已经写好了获取selectedButton的逻辑,完全可以直接用:

$data = $_POST['data'];
$selectedButton = $_POST['selectedButton'];

// 接下来就可以根据$selectedButton的值处理不同的数组逻辑了

额外提示

如果之后遇到$_POST拿不到数据的情况,可能是Angular默认发送了JSON格式的请求体,这时候你需要在PHP里用以下方式解析:

$requestBody = json_decode(file_get_contents('php://input'), true);
$data = $requestBody['data'];
$selectedButton = $requestBody['selectedButton'];

不过从你说已经能正确接收$data来看,当前的请求格式是兼容$_POST的,所以直接用你原来的PHP代码就没问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 03:48:27