ik vraag mbv query gegevens op meerder tabellen.
Doel is om te tonen welke personen welke rol hebben. Echter het lukt me alleen om dit een platte lijst te tonen.
Dus resultaat is:
Rol 1 - persoon 1
Rol 1 - persoon 2
Rol 1 - persoon 3
Rol 2 - persoon 1
Rol 3 - persoon 1
Rol 3 - persoon 2
enz
Zo zie dat de rolnaan constant getoond wordt.
Wat ik graag zou willen is dat de lijst er ongveer zo uit te komt zien:
Rol 1 - persoon 1
- persoon 2
- persoon 3
Rol 2 - persoon 1
Rol 3 - persoon 1
- persoon 2
Hoe kan ik dit voor elkaar krijgen? Ik dacht iets met GROUP BY in mijn sql maar levert ook nog niet het gewenste resultaat op.
Voor de volledigheid mijn code:
//------------------------------------------------------------------------ FUNCTIE DIDM contactpersoon
function didmcontact (){
global $connection;
$sqlUitlezen = mysqli_query($connection, $sql = "
SELECT
person.*,
person2role.*,
role.*
FROM
person
LEFT JOIN person2role ON person2role.MSKEYVALUE_MEDEWERKER = person.MSKEYVALUE_MEDEWERKER
LEFT JOIN role ON role.MSKEYVALUE_ROL = person2role.MSKEYVALUE_ROL
WHERE role.MSKEYVALUE_ROL LIKE 'ROLE:PROCES:DECENTRAAL IDM BEHEER%'
ORDER BY role.ACHMEA_ROLETYPE ASC, role.MSKEYVALUE_ROL ASC
");
$sqlAantal = mysqli_num_rows($sqlUitlezen);
if ($sqlAantal > 0){
echo '<article>';
echo '<table id="customers">';
echo ' <tr>';
echo ' <td colspan="5" align="right"><h3>Aantal rollen gekoppeld ('.$sqlAantal.') ';
echo ' </tr>';
echo ' <tr>';
echo ' <th nowrap><h4>DIDM Contactpersonen</h4></th>';
echo ' <th colspan="2"><h4></h4></th>';
echo ' </tr>';
while ($sqlData = mysqli_fetch_assoc($sqlUitlezen)){
echo ' <tr>';
echo ' <td><h5>'.$sqlData['MSKEYVALUE_ROL'].'</h5></td>';
echo ' <td><h6>'.$sqlData['MX_FIRSTNAME'].' '.$sqlData['MX_LASTNAME'].'</h6></td>';
echo ' </tr>';
}
echo '</table>';
echo '</article>';
}else{
echo '<h4>Sorry, ik kan geen medewerker-rolkoppeling vinden!</h4>';
}
}