> 백엔드 개발 > PHP 튜토리얼 > 请教高手PHP 多选复选框checkbox如何判断选中?

请教高手PHP 多选复选框checkbox如何判断选中?

WBOY
풀어 주다: 2016-06-23 13:32:16
원래의
1026명이 탐색했습니다.

数据库字段content有如果下数据:
s1,s2,s3,s4,s5
数据随时会变动,如果只有:s1,s2,s5,但是s1和s2是固定存在的


HTML:



......



PHP:
$sql="select * from `user_role` ";
$row_role = $db->getRow($sql);
$row_role = $row_role['content'];
$role=explode(',',$row_role);//分割成数组


如何才能做到如果数据库有:s1,s2,s3,则s3是选中状态


回复讨论(解决方案)

<?php/*$sql="select * from `user_role` ";$row_role = $db->getRow($sql);$row_role = $row_role['content'];$role=explode(',',$row_role);//分割成数组*/$role = array('s1','s2','s3');?><input type="checkbox" name="content[]" <?php if(in_array('s1',$role) && in_array('s2',$role) && in_array('s3',$role)){ ?>checked="checked"<?php } ?>  value="s3" ><input type="checkbox" name="content[]"  value="s4" ><input type="checkbox" name="content[]"  value="s5" >
로그인 후 복사

谢谢楼上朋友回复,问题是

$role = array('s1','s2','s3');

这句,s1、s2、s3....等是不定的,也可能是几十个,怎么改进?

你不是读db获取的吗?
我只不过是不读db而已。你读db,把选出的写入$role就可以了。

不同的规则,写不同的分支就可以了。
例如:
$s3check = 0;

if(xxx){
$s3check=1;
}elseif(xxx){
$s3check=1;
}elseif(xxx){
$s3check=0;
}else{
$s3check=1;
}

checked="checked"  value="s3" >

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿