根据条件循环复框,麻烦各位朋友帮我看一下应该怎样改
程序员文章站
2022-06-01 21:22:08
...
PHP根据条件循环显示
我想要的结果是$row['id']==$value 复选框就打上"√",其它不相等的就直接显示出来!
现在的问题是复选框能上"√",但那些没打上"√"的不会显出来,如果在whiel循环里多加一条
那他就会重复显示;
希望能各位朋友帮个忙
暂时只想到这个办法,不知有没有改进版的
$row[name]EOD; } }} ?>
我想要的结果是$row['id']==$value 复选框就打上"√",其它不相等的就直接显示出来!
现在的问题是复选框能上"√",但那些没打上"√"的不会显出来,如果在whiel循环里多加一条
echo $row[name]EOD;
那他就会重复显示;
希望能各位朋友帮个忙
回复讨论(解决方案)
foreach($authority as $value){ $checked = $row['id']==$value ? 'checked' : ''; echo $row[name]EOD;}
你只让程序显示了相等的情况,没让程序显示不相等的情况
if($row['id']==$value){ echo $row[name]EOD; }else{echo $row[name]EOD;}
你只让程序显示了相等的情况,没让程序显示不相等的情况
if($row['id']==$value){ echo $row[name]EOD; }else{echo $row[name]EOD;}这样每遍历一次数组,他就会重复,这个我试过不行
if($id==$value){}else{}
这怎么会重复的。。
就一个条件,要么是要么否。。
if($id==$value){}else{}
这怎么会重复的。。
就一个条件,要么是要么否。。
因为有丙次的盾环在那里: foreach 与WHILE 循环
while 循环一次, foreach 要循环4次因为$authority数组有4个值,在这4个值里面只有一个值是跟$id配置的,如果你在IF里加入ELSE 那他就会同一记录出现重3次IF ELSE里的值
foreach($mysqlResult as $row){ $hasValue = false; foreach($authority as $value){ if($row['id']==$value){ $hasValue = true; } } if($hasValue){ echo 'yes'; }else{ echo 'no'; } }
暂时只想到这个办法,不知有没有改进版的
问题解决,解决代码如下,谢谢热心的朋友提醒
$row[name]EOD; break; }else{ $pd = "false"; }//if end $cc=$cc.$cc; }//foreach end if($pd == "true"){ echo $cc; }else{ echo $row[name]EOD; } } ?>
版主的这个方法,不但会重复就连那个选择口也不会出来,不过还是谢谢你的热心