>我有以下一组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
和Col2 = 10
。Col
和Col2
都应该保持不变。但是,代码将同时更新 1。我已经尝试了我能想到的每一次迭代,使用continue
、break
和return
但似乎没有任何效果。
任何帮助将不胜感激。
谢谢!
你错过了这里的平等
elseif($data3["Col"]==2)
等号 (=
( 用于赋值而不是用于测试相等性(==
(,所以你的elseif
子句应该是$data3["Col"] == 2
而不是$data3["Col"]= 2
;
if($data3["Col"] < 2 ){
$db->query("UPDATE answers SET Col = Col+1");
}elseif( $data3["Col"]= 2){// not $data3["Col"]= 2 but this $data3["Col"] == 2
$db->query("UPDATE answers SET Col = Col+0");
}
祝你好运
而不是
elseif($data3["Col"]=2){ $db->query("UPDATE answers SET Col = Col+0");}
使用这个:
elseif($data3["Col"]==2){ $db->query("UPDATE answers SET Col = Col+0");}
你不需要使用elseif进行任何操作.. 只需尝试是否有任何操作...
检查$data3["Col2"]
值。我认为你的问题就在这里..