query($query1) or die ("Cannot execute query1"); echo ""; while ($row1 = $result1->fetch_array()){ $uid1=$row1[uid]; $result6a = $db->query("SELECT distinct 1 FROM stan_ausnahme WHERE uid ='$uid1'"); $row6a = $result6a->fetch_array(); if($row6a[0] == 1){ # Wenn keine Ausnahme(12er Block entspricht Ausnahme) dann nicht absenden # Zusammenhängende Zeiträume müssen nur angezeigt werden, wenn man auch den 12er Block hat, sonst machts keinen Sinn echo" "; } } echo "
$uid1  
"; $titel = "Zusammenhängende Zeiträume
im Vertiefungsbereich?"; $text = "Wenn Sie ein Vertiefungsbereich in mehrere Stellen aufgesplittet haben, müssen die gesplitteten Teilbereiche im direkten Anschluss aneinander folgen."; echo" $titel
"; $db = dbconnect(); # echo " ($anzahl_bereich[Anzahl] von 4 notwendigen Vertiefungsbereichen wurden abgedeckt)"; # echo "

"; # $query3 = "SELECT distinct t1.vert_bereich FROM stan_antrag t1 WHERE t1.status = ( SELECT MAX(t2.status) FROM stan_antrag t2 WHERE t1.aendid = t2.aendid ) AND t1.uid = '$uid1' AND (t1.zuweisung is NULL OR t1.zuweisung='Z') "; $result3 = $db->query($query3) or die ("Cannot execute query3"); echo ""; while ($row5 = $result3->fetch_array()){ $res_bez = $db->query("SELECT bezeichnung FROM `stan_vertiefungsbereich` WHERE vbid = '$row5[vert_bereich]'"); $stell_bez = $res_bez->fetch_array(); // Abfrage frägt ab, ob innerhalb eines Vertiefungsbereichs eine Lücke ist. Ausgabe nur 1 Treffer, sobald 1 Lücke gefunden wurde --> Warnung ausgeben $res_anz = $db->query("SELECT ma.uid, DATE_FORMAT(beginn, '%d.%m.%Y') beginn, DATE_FORMAT(ende, '%d.%m.%Y') ende, bezeichnung, COALESCE( luecke, 'OK' ) AS Luecke, 1 AS Treffer FROM stan_tmp_check_data ma LEFT JOIN ( SELECT saaid, 'Lücke folgt' AS luecke FROM stan_tmp_check_data a WHERE a.ende != (SELECT MAX( ende ) FROM stan_tmp_check_data x WHERE x.uid = a.uid AND vbid='$row5[vert_bereich]') AND NOT EXISTS ( SELECT saaid FROM stan_tmp_check_data b WHERE a.uid = b.uid AND b.beginn = DATE_ADD( a.ende, INTERVAL 1 DAY ) AND b.vbid='$row5[vert_bereich]' ) OR ( a.beginn IN (select beginn FROM stan_tmp_check_data d WHERE d.saaid != a.saaid) AND a.ende IN (select ende FROM stan_tmp_check_data e WHERE e.saaid != a.saaid AND e.uid = '$uid1') ) ) L ON L.saaid = ma.saaid WHERE ma.uid = '$uid1' AND ma.vbid='$row5[vert_bereich]' AND Luecke !='OK' ORDER BY ma.uid, ma.beginn LIMIT 1 "); $anzahl_bereich = $res_anz->fetch_array(); echo ""; } echo "
abgedeckte Vertiefungsbereiche:Status
$stell_bez[bezeichnung] "; if($anzahl_bereich[Treffer] != 1){ echo "OK"; }else{ $fehler = 'X'; echo "getrennte Zeiträume (unzulässig)"; } echo"

"; ?>