当前位置:Gxlcms > PHP教程 > 根据条件循环复框,麻烦各位朋友帮我看一下应该怎样改

根据条件循环复框,麻烦各位朋友帮我看一下应该怎样改

时间:2021-07-01 10:21:17 帮助过:3人阅读

PHP根据条件循环显示

  $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;	}	} ?>

版主的这个方法,不但会重复就连那个选择口也不会出来,不过还是谢谢你的热心

人气教程排行