Moin!
<td><?php echo $row['id_termin'].":".$row['art_nr']."".$row['hgr_kurz'].".".$row['zielgr_kurz']." ".$row['sem_nr']; ?></td>
<td><?php echo " von: ".$von." bis ".$bis; ?></td>
<td><?php echo $frist; ?></td>
<td><?php echo $row['zielgruppe']." ".$row['zusatz']; ?></td>
<td><?php echo $row['haus'].", ".$row['raum']; ?></td>
</tr>
<?php }
Das wieder 'nur' ein logisches Problem. Überleg mal: $row ist 'erledigt', diesen Array könntest Du nach dem
while ($row = mysql_fetch_array ($result_vorschau)) {
}
mit unset ($row) löschen.
Alles, was Du jetzt noch brauchst sollte in $termin[] stehen. Wenn nicht schreib es rein.
foreach ($arJahreMonate AS $strJahrMonat) {
$arAuswahlTermin=explode('-',$strJahrMonat);
# Jetzt hast Du in $arAuswahlTermin[0] das Jahr und in $arAuswahlTermin[1] den Monat
echo "<tr style='border-top:1px solid gray;'><td colspan='5'><strong>" . $row['monat'] ."</strong></td></tr>\n";
foreach ($arTermine as $arTermin) {
# Bitte Plural/Einzahl beachten!
if (
($arTermin['jahr']==$arAuswahlTermin[0])
&&
($arTermin['monat']==$arAuswahlTermin[1])
{
echo '<td>'.$arTermin['id_termin'].':'.$arTermin['art_nr'].':'.$arTermin['hgr_kurz'].'.'.$arTermin['zielgr_kurz']." ".$arTermin['sem_nr'].'</td>';
} # end if
} # next $arTermine
} # next $arJahreMonate
Was passiert da?
In der While-Schleife bildest also bei der Auswertung des results zwei Arrays. Einer enthält:
$arJahreMonate= array('2004-01','2004-02','2004-03',...'2005-01','2004-01'...)
Der andere enthält:
$arTermine=array(0....n)
$arTermine[$x]['jahr']= wert aus $row
$arTermine[$x]['monat']=wert aus $row
...
$arTermine[$x]['zielgruppe']=wert aus $row['zielgruppe']
Nach Abarbeitung der Whileschleife ist (der Array) $row nutzlos
Jetzt nimmst Du in der ersten foreach-Schleife jedes einzelne Element von $arJahreMonate und splittest das in Monat und Jahr.
In der zweiten (eingeschlossenen ) foreach-Schleife nimmst Du jeden Termin und testest, ob dieser im Jahr und Monat liegt. (if-Bedingung)
Wenn ja: Ausgabe.
Sonst: nichts.
endif
next Termin
next MonatJahr
Damit solltest Du hübsch sortiert in der Reihenfolge die Termine nach Monat und Tag sortiert bekommen. Wenn nicht, dann sortiere den Array $arJahreMonate zusätzlich.
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development