gpt4 book ai didi

php - 使用 pdo 进行插入中的 BindValue 循环

转载 作者:行者123 更新时间:2023-11-30 00:49:57 26 4
gpt4 key购买 nike

在我的表“config”中,我有 38 个字段,如下所示:

enter image description here

然后,我想插入以下代码,而不是当时键入所有这些字段:

$var = "";// var para os campos
$var0 = ""; // var para os values

for($i=1;$i<39;$i++){
$var = $var.$i.',';
}

for($i=0;$i<36;$i++){
$var0 = $var0.':'.$i.',';
}


$info_config = $ponte_db->prepare('INSERT INTO config ('.$var.') VALUES ('.$valor_cout.','.$var0.') ');

for($i=0;$i<36;$i++){
$info_config->bindValue(":".$i, $result[$i]);
}

$info_config->execute();

变量结果如下

enter image description here

那么,我的想法行不通,但是数据库中的结果没有保存,为什么?

最佳答案

你有一个小问题,你的字符串每次都会被重写:

所以代替这个:

for($i=1;$i<39;$i++){
$var = $var.$i.',';
}

for($i=0;$i<36;$i++){
$var0 = $var0.':'.$i.',';
}

这样做:

for($i=1;$i<39;$i++){
$var .= $var.$i.',';
}

for($i=0;$i<36;$i++){
$var0 .= $var0.':'.$i.',';
}

唯一的区别是我在 = 中添加了 .

.=$string = $string + 'value';

的简写

我认为你应该更改此设置(但我不确定,因为我不知道 $valor_cout 来自哪里):

$info_config = $ponte_db->prepare('INSERT INTO config ('.$var.') VALUES ('.$valor_cout.','.$var0.') '); 

$info_config = $ponte_db->prepare('INSERT INTO config ('.$var.') VALUES ('.$var0.') '); 

关于php - 使用 pdo 进行插入中的 BindValue 循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21064452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com