2013-09-24 2 views
0

J'ai une requête sql qui regroupe les résultats. L'imprimante print_r montre les résultats que j'aimerais obtenir. Maintenant, je voudrais afficher ces résultats dans des groupes de table, par exemple Table One avec une liste de tous les sièges avec cette table, Table Deux etc.Affichage des résultats SQL groupés

J'ai essayé toutes sortes de choses pour obtenir ce résultat en vain ... voici le code. Je peux facilement afficher les enregistrements - mais je voudrais les afficher par des groupes ARGHHH

$seatings = $wpdb->get_results("SELECT 
           bb_cl_seating.table, 
           bb_cl_seating.seat, 
           bb_cl_seating.seat_id, 
           bb_events_attendee.fname, 
           bb_events_attendee.lname, 
           bb_events_attendee.email 
          FROM bb_cl_seating 
          LEFT JOIN bb_events_attendee 
          ON bb_cl_seating.id = bb_events_attendee.id 
          WHERE bb_cl_seating.event_id = '1' "); 

foreach ($seatings as $seating) { 


    } // Ends foreach 

Répondre

0
$seatings = $wpdb->get_results("SELECT 
           bb_cl_seating.table, 
           bb_cl_seating.seat, 
           bb_cl_seating.seat_id, 
           bb_events_attendee.fname, 
           bb_events_attendee.lname, 
           bb_events_attendee.email 
          FROM bb_cl_seating 
          LEFT JOIN bb_events_attendee 
          ON bb_cl_seating.id = bb_events_attendee.id 
          WHERE bb_cl_seating.event_id = '1' "); 

foreach ($seatings as $seating => $group) { 
    //$data[table] = seat,seat2,seat3... 
    $data[$group[1]] = $data[$group[1]].','.$group[2]; 
    } // Ends foreach 

Dans cet exemple, créer un tableau de données de $ de tables avec le vôtre seats trier par « ».

Son aide?

+0

fini par trouver la réponse grâce à la direction jonasdiel - il m'a orienté dans la bonne direction. J'ai mis le code qui a fonctionné ci-dessous. – user10660

0

Cela a fait l'affaire - espère que cela aide quelqu'un d'autre :-)

$seatings = $wpdb->get_results("SELECT bb_cl_seating.table, bb_cl_seating.seat, bb_cl_seating.seat_id, bb_events_attendee.fname, bb_events_attendee.lname, bb_events_attendee.email 
FROM bb_cl_seating 
LEFT JOIN bb_events_attendee ON bb_cl_seating.id = bb_events_attendee.id 
WHERE bb_cl_seating.event_id = '1' 
ORDER BY bb_cl_seating.table, bb_cl_seating.seat 
"); 



$table_title = ''; 
foreach($seatings as $result => $col) { 


    if($table_title !== $col->table) { 
     $table_title = $col->table; 
     echo "<strong>$table_title</strong>"; 
     echo "<br />"; 
    } 
Questions connexes