首頁 >後端開發 >php教程 > PHP编程 关于多选框默认选中有关问题

PHP编程 关于多选框默认选中有关问题

WBOY
WBOY原創
2016-06-13 13:30:521144瀏覽

PHP编程 关于多选框默认选中问题
两张表
sub_role_table(srt_id,id,role_id)id是用户Id,role_id是角色id
role_table(role_id,role_name) role_name是角色名称
现在要实现一个用户多个角色的修改在修改页面循环出所有的角色,然后该用户有什么角色,什么角色是默认选中的
源码如下
=======================================================
$sql="select * from role_table where role_id!=0"; 
$re=mysql_query($sql);

$sql2="select * from sub_role_table where id='$id'"; 
$res=mysql_query($sql2);

$showa = '';
while ($row=mysql_fetch_array($res)){
while ($roww=mysql_fetch_array($re)){
if($roww[role_id]==$row[role_id]) {
$showa .= "$roww[role_name]";
} else {
$showa .= "
$roww[role_name]";
}
}
}
print_r($showa);
?>
现在就是在用户本身有多个角色的情况下,显示的时候只显示用户的第一个角色是默认选中的,其他的角色不默认选中,希望各位大侠帮忙看看代码错那里了,让我实现这个默认复选框的选中问题

------解决方案--------------------

PHP code

<?php /* Created on [2012-5-17] */

#所有信息
$sql = "select * from role_table where role_id!=0";
$re = mysql_query($sql);
if (!$re)
    die("SQL:{$sql}<br>Error:" .
    mysql_error());
if (mysql_affected_rows() > 0) {
    $allinfors = array ();
    while ($rows = mysql_fetch_array($re)) {
        array_push($allinfors, $rows);
    }
}

#要修改信息
$sql2 = "select * from sub_role_table where id='$id'";
$res = mysql_query($sql2);
if (!$re)
    die("SQL:{$sql}<br>Error:" .
    mysql_error());
if (mysql_affected_rows() > 0) {
    $editinfor = mysql_fetch_array($res);
}
?>

<?php foreach($allinfors as $all){ ?>
<input type="checkbox" name="item[]" value="<?=$all['role_id']?>"> />=$all['role_name']?>
<?php } ?> <div class="clear">
                 
              
              
        
            </div>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn