foreach Schleife innerhalb der Schleife, die Duplikate in der Ausgabe schafft

Ich habe eine foreach Schleife innerhalb der Schleife, die Informationen von einer unterschiedlichen Tabelle erhält. Die Tabelle hat eine Spalte mit einer ID, die die ID des Post-Typs widerspiegelt, so dass sie immer eindeutig sein sollte.

Wenn ich mir die Ergebnisse anschaue, wird die erstellte Variable ($ fullname) mehrfach in Zeilen mit Posts angezeigt, die nicht die gleiche ID wie die $ fullname Event ID haben.

Hier ist der Code mit der gesamten Schleifenaktion

<?php // the loop if (have_posts()) : $output.=''; $output.=''; $output.=''; $output.=''; $output.=''; $output.=''; $output.=''; $output.=''; while (have_posts()) : the_post(); //Get post attendee amount $project_id = get_the_ID(); $attendees = $wpdb->get_var("SELECT COUNT(user_id) FROM ".$wpdb->prefix."mro_attendees WHERE event_id = ".$project_id.""); //Get team leader name $leader = $wpdb->get_results("SELECT user_first_name, user_last_name FROM ".$wpdb->prefix."mro_attendees WHERE event_id = ".$project_id." AND user_role = 'team_leader' LIMIT 0,1"); foreach ($leader as $lead) { $leaderfirst = $lead->user_first_name; $leaderlast = $lead->user_last_name; $fullname = $leaderfirst . ' ' . $leaderlast; } //Title and link $temp_title = get_the_title($post->ID); $temp_link = get_permalink($post->ID); // output all findings - CUSTOMIZE TO YOUR LIKING $output.=''; $output.=''; $output.=''; $output.=''; $output.=''; $output.=''; $output.=''; endwhile; $output.='
AgencyProject DescriptionTime FrameTeam LeaderVolunteer Limit
'.$temp_title.''.get_custom_field('project_description').''.get_custom_field('project_timeframe').''.$fullname.''.$attendees.'/'.get_custom_field('project_limit').'
'; //pagination links $output.= wp_pagenavi(); $output.='#pagenavi{display:none;}'; $output.='.wp-pagenavi{margin-bottom:20px;}'; else: $output.='nothing found.'; endif; ?>

Der Teamleiter $ fullname sollte nur einmal entsprechend der Post-ID angezeigt werden, dass die Ereignis-ID in der Schleife gleich ist. Die Ausgabeergebnisse enden jedoch damit, diese Personen in andere Zeilen für Projekte (Post-IDs) zu setzen, die nicht die gleichen haben Ereignis-ID mit der Person. Also erscheinen sie (die Teamleiter-Namen) in zusätzlichen Reihen in der Schleife und ich kann nicht herausfinden, warum dies der Fall ist. Die obige Anzahl Abfrage verursacht nicht das gleiche Problem.

Danke und große Anerkennung an alle, die mir Hilfe anbieten können!

Solutions Collecting From Web of "foreach Schleife innerhalb der Schleife, die Duplikate in der Ausgabe schafft"

Dies ist ein PHP-Logik / Variablen-Problem. Sie geben $fullname unabhängig $fullname ob es innerhalb der foreach dieser Iteration gesetzt wurde oder nicht. Bei Projekten, die nie in den foreach , um $fullname zu setzen, enthält es immer noch die letzte Iteration, auf die es gesetzt wurde. Setzen Sie ihn vor der foreach auf eine leere Zeichenfolge, so dass er nur einen Namen enthält, wenn er in die foreach .