ホームページ > バックエンド開発 > PHPチュートリアル > PHP プログラミング 複数選択ボックスのデフォルト選択に関する問題について

PHP プログラミング 複数選択ボックスのデフォルト選択に関する問題について

WBOY
リリース: 2016-06-13 13:30:52
オリジナル
1147 人が閲覧しました

複数選択ボックスのデフォルト選択問題に関する PHP プログラミング
2 つのテーブル
sub_role_table(srt_id,id,role_id)id はユーザー ID、role_id はロール ID
role_table(role_id,role_name) role_name はロール名
次に、1 人のユーザーに対して複数のロールの変更を実装する必要があります。変更ページでは、すべてのロールがサイクルアウトされ、ユーザーが持つロールとデフォルトで選択されるロールが決まります。
ソースコードは次のとおりです
========== ================================ =============
$ 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 コード

<?php

/* [2012-5-17] 作成 */

#すべての情報
$sql = "select * from role_table where role_id!=0";
$re = mysql_query($sql);
if (!$re)
    die("SQL:{$sql}<br>エラー:" .
    mysql_error());
if (mysql_affected_rows() > 0) {
    $allinfors = 配列();
    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>エラー:" .
    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_id']==$editinfor[ 'role_id'])?"checked=checked":""?><?=$all['role_name']?>
<?php } ?>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート