Salve ho una funzione che mi incrocia i dati tra gli istituti bancari e chi ci lavora dentro.
io vorrei che a video si creasse una tabella per ogni banca con dentro le persone.

Es:
banca A
pippo
pluto
ciccio

Banca B
lore
ipsum
topolino


Adesso invece vedo cosi

Banca A
ciccio
Banca B
lore
Banca A
pluto

Codice PHP:
function risultato_ricerca_archivio() {
    global 
$conn;
    
$region $_POST['region'];
$province $_POST['province'];
$city $_POST['city'];
$banca $_POST['banca'];
$candidato $_POST['candidato'];
$cluster $_POST['cluster'];
$stato_trattativa $_POST['stato_trattativa'];
    
$sql "SELECT COUNT(*) FROM persone";
    
$stmt $conn->prepare($sql);
    
$stmt->execute();
    
$row $stmt->fetch(PDO::FETCH_NUM);
    
$tot_records $row[0];
    
$perpage 15;
    
$page 1;
         if(isset(
$_GET['page'])){$page filter_var($_GET['page'],FILTER_SANITIZE_NUMBER_INT);}
    
$tot_pagine ceil($tot_records/$perpage);
    
$pagina_corrente $page;
    
$primo = ($pagina_corrente-1)*$perpage;    
        
$sql 'SELECT persone.*, comuni.nome AS comune,  comuni.id AS comune_id, banche_mue.nome  AS nbanca FROM persone ';
    
$sql .= 'INNER JOIN banche_mue ON persone.id_banca = banche_mue.id ';
    
$sql .= 'INNER JOIN comuni ON banche_mue.id_comune = comuni.id  ';
    
$out='<table class="table">';
    if (
$_POST['region'] AND $_POST['cluster'])  
{
    
$sql .= " WHERE banche_mue.id_regione = '".$_POST['region']."' AND persone.cluster = '".$_POST['cluster']."'";
}  
    elseif (
$_POST['region'] AND $_POST['province'] AND $_POST['cluster'] )  
{
    
$sql .= " WHERE banche_mue.id_regione = '".$_POST['region']."' AND banche_mue.id_provincia = '".$_POST['province']."' AND persone.cluster = '".$_POST['cluster']."'";
}  
elseif (
$_POST['region'] AND $_POST['province'] AND $_POST['city'] AND $_POST['cluster'] )  
{
    
$sql .= " WHERE banche_mue.id_regione = '".$_POST['region']."' AND banche_mue.id_provincia = '".$_POST['province']."' AND banche_mue.id_comune = '".$_POST['city']."' AND persone.cluster = '".$_POST['cluster']."'";
}  
    elseif (
$_POST['region'] AND $_POST['province'] AND $_POST['city'] AND $_POST['banca']  )  
{
    
$sql .= " WHERE banche_mue.id_regione = '".$_POST['region']."' AND banche_mue.id_provincia = '".$_POST['province']."' AND banche_mue.id_comune = '".$_POST['city']."' AND persone.id_banca = '".$_POST['banca']."'";
}  
elseif (
$_POST['region'] AND $_POST['province'] AND $_POST['city'])
{
    
$sql .= " WHERE banche_mue.id_regione = '".$_POST['region']."' AND banche_mue.id_provincia = '".$_POST['province']."' AND banche_mue.id_comune = '".$_POST['city']."'";
}  
elseif (
$_POST['region'] AND $_POST['province'] )
{
    
$sql .= " WHERE banche_mue.id_regione = '".$_POST['region']."'  AND banche_mue.id_provincia = '".$_POST['province']."'";
}  
elseif (
$_POST['region'])
{
    
$sql .= " WHERE banche_mue.id_regione = '".$_POST['region']."' GROUP BY comuni.nome,  comuni.id, banche_mue.nome, persone.id ";
}  
elseif (
$_POST['cluster'])
{
    
$sql .= " WHERE persone.cluster = '".$_POST['cluster']."'";
}  
elseif (
$_POST['stato_trattativa'])
{
    
$sql .= " WHERE persone.stato_trattativa = '".$_POST['stato_trattativa']."'";
}  
elseif (
$_POST['candidato'])
{
    
$sql .= " WHERE persone.cognome LIKE '%".$_POST['candidato']."%'";
}  
    
    
$sql .= 'ORDER BY persone.cognome ASC LIMIT '.$perpage.' OFFSET '.$primo.'  ';    
    
$stmt $conn->prepare($sql);
    
$stmt->execute();

    while(
$row $stmt->fetch(PDO::FETCH_ASSOC)){
        if (
$i==0){   $out .= "<tr>";}
        
$out.='<td>'.$row['comune'].'</td>';
        
$out.='<td>'.$row['nbanca'].'</td>';
        
$out.='</tr>';
        
$out.='<tr>';
        
$out.='<td>'.$row['nome_persone'].' &nbsp; &nbsp;'.$row['cognome'].' </td>';
        
$out.='<td>'.$row['cluster'].'</td>';
        
$out.='<td>'.$row['stato_trattativa'].'</td>';
        
$out.='<td>'.$row['trattiva'].'</td>';
        
$out.='<td>'.$row['telefono'].'</td>';
        
$out.='</tr>';
        }
        
$out.='<tr><td colspan="7"><nav><ul class="pagination">';
for(
$i=1$i<=$tot_pagine$i++)
    {
    
$out .='<li><a href="?azione=risultato_ricerca&page='.$i.'">'.$i.'</a></li>';
    }
$out .= "</ul></nav></td></tr>";
$out.='</table>';
return(
$out);
    
    } 
A monte di tutto ciò c'è un form che mi permette di selezionare per regione, provincia, comune, etc etc..

Grazie per ogni tipo di suggerimento