我有以下一组if / elseif条件来更新标题为Col
&的列。提交表单时Col2
:
if($data3["Col"] < 2 ){
$db->query("UPDATE answers SET Col = Col+1");
}elseif( $data3["Col"]= 2){
$db->query("UPDATE answers SET Col = Col+0");
}
if($data3["Col2"] < 10){
$db->query("UPDATE answers SET Col2 = Col2+1");
}elseif( $data3["Col2"] >= 10){
$db->query("UPDATE answers SET Col2 = Col2+0");
}
当代码运行时,它会忽略if / elseif条件并执行每次更新。例如,让我们在表单提交时说Col = 2
&amp; Col2 = 10
。 Col
和Col2
都应该保持不变。但是,代码更新为1.我已尝试使用continue
,break
和return
进行的每次迭代,但似乎没有任何效果。
非常感谢任何帮助。
谢谢!
答案 0 :(得分:1)
你错过了与此相等的
elseif($data3["Col"]==2)
答案 1 :(得分:1)
等号(=
)用于分配而不是用于测试相等性(==
),因此您的elseif
子句应该是$data3["Col"] == 2
而不是{{ 1}};
$data3["Col"]= 2
祝你好运
答案 2 :(得分:1)
而不是
elseif($data3["Col"]=2){ $db->query("UPDATE answers SET Col = Col+0");}
使用它:
elseif($data3["Col"]==2){ $db->query("UPDATE answers SET Col = Col+0");}
答案 3 :(得分:-1)
你不需要使用elseif没有动作.. 试试是否采取任何行动...
检查t.integer "dropped_projects", default: 0, null: false
值。我想你的问题就在这里..