1 つのクエリで、ユーザー テーブル内のすべてのユーザーの詳細を取得しています。
$userDetails = $dbUser ->getAllUsers();
2 番目のクエリでは、選択したグループにあるユーザーの詳細を取得しています。
$groupMemberDetails = $dbGroupMembers ->getAllGroupMembers($groupId);
しかし、ユーザーが選択されたグループに属している場合は、それらを選択済みとして表示し、残りのユーザーを未選択として表示する必要があります。
次のコードを実行しましたが、正しく取得できません。
私を修正してください。
foreach ( $userDetails as $user ) {
$userId = $user['user_id'];
$userFirstName = $user['first_name'];
$userName = '';
$selected = "";
foreach ( $groupMemberDetails as $groupMemberDetail ) {
$groupMemberId = $groupMemberDetail['user_id'];
if($groupMemberId == $userId) {
$selected = "selected";
}
$isAdmin = $groupMemberDetail['is_owner'];
if($isAdmin) {
$userName = $userFirstName . "(admin)";
} else {
$userName = $userFirstName;
}
}
echo '<option value="'.$userId.'" '.$selected.'>'. $userName . '</option>';
}