前端传入的数据格式:
const res1 = await utils.requestPost({
url: utils.basePhpUrl + '/banci/subBanciDatas.php',
data: {
// 尝试修改数据类型
banciData: JSON.stringify(banciData),
len: banciData.length
}
})
后端php相关代码(中间有的缩进不太对,一Tab就换行,我不会改哈哈)
// 获取数据
$bancidata = $_POST["banciData"];
$banci = htmlspecialchars_decode($bancidata);
$banciData = json_decode($banci);
$len = $_POST["len"];
// 进行操作
$sql = "insert into banci(shijian,riqi,zhiwei,staffId,bumen,storeId,quanxian,zhuangtai) values(?,?,?,?,?,?,?,?);";
for($i=0;$i<$len;$i++){
$bancidata = $banciData[$i];
$shijian = $bancidata->shijian;
$riqi = $bancidata->riqi;
$zhiwei = $bancidata->zhiwei;
$staffId = $bancidata->staffId;
$bumen = $bancidata->bumen;
$storeId = $bancidata->storeId;
$quanxian = $bancidata->quanxian;
$zhuangtai = $bancidata->zhuangtai;
$stmt = mysqli_prepare($conn,$sql);
mysqli_stmt_bind_param($stmt,'sssisiii',$shijian,$riqi,$zhiwei,$staffId,$bumen,$storeId,$quanxian,$zhuangtai);
if(!mysqli_stmt_execute($stmt)){
die("插入数据失败");
}
}
$code = 1;
因为我的数据的格式不是单纯的数组而是对象数组,所以这样取数据了。如果是数组的话是可以用foreach的。亲测是可以的,有问题评论区交流。