diff --git a/system/check_studentlehrverband.php b/system/check_studentlehrverband.php index 922160dee..60728ab6f 100644 --- a/system/check_studentlehrverband.php +++ b/system/check_studentlehrverband.php @@ -27,14 +27,14 @@ // * - Studenten ohne Prestudent_id werden korrigiert // * - Inkonsistenzen der Tabellen tbl_studentlehrverband, tbl_student werden korrigiert // ********************************** -require_once('../config/vilesci.config.inc.php'); -require_once('../include/studiensemester.class.php'); -require_once('../include/person.class.php'); -require_once('../include/benutzer.class.php'); -require_once('../include/student.class.php'); -require_once('../include/prestudent.class.php'); -require_once('../include/lehrverband.class.php'); -require_once('../include/mail.class.php'); +require_once(dirname(__FILE__).'/../config/vilesci.config.inc.php'); +require_once(dirname(__FILE__).'/../include/studiensemester.class.php'); +require_once(dirname(__FILE__).'/../include/person.class.php'); +require_once(dirname(__FILE__).'/../include/benutzer.class.php'); +require_once(dirname(__FILE__).'/../include/student.class.php'); +require_once(dirname(__FILE__).'/../include/prestudent.class.php'); +require_once(dirname(__FILE__).'/../include/lehrverband.class.php'); +require_once(dirname(__FILE__).'/../include/mail.class.php'); $db = new basis_db(); @@ -54,24 +54,24 @@ $qry = "SELECT student_uid, studiengang_kz FROM public.tbl_student WHERE prestud if($result = $db->db_query($qry)) { $text.="Suche Studenten mit fehlender Prestudent_id ...\n\n"; - + while($row = $db->db_fetch_object($result)) { - $qry_id = "SELECT tbl_prestudent.prestudent_id FROM campus.vw_student JOIN public.tbl_prestudent USING(person_id) WHERE uid='".addslashes($row->student_uid)."' AND tbl_prestudent.studiengang_kz='$row->studiengang_kz'"; + $qry_id = "SELECT tbl_prestudent.prestudent_id FROM campus.vw_student JOIN public.tbl_prestudent USING(person_id) WHERE uid=".$db->db_add_param($row->student_uid)." AND tbl_prestudent.studiengang_kz=".$db->db_add_param($row->studiengang_kz); if($result_id = $db->db_query($qry_id)) { if($db->db_num_rows($result_id)==1) { if($row_id = $db->db_fetch_object($result_id)) { - $qry_upd = "UPDATE public.tbl_student SET prestudent_id='$row_id->prestudent_id' WHERE student_uid='".addslashes($row->student_uid)."'"; + $qry_upd = "UPDATE public.tbl_student SET prestudent_id=".$db->db_add_param($row_id->prestudent_id)." WHERE student_uid=".$db->db_add_param($row->student_uid); if($db->db_query($qry_upd)) { $text .= "Prestudent_id von $row->student_uid wurde auf $row_id->prestudent_id gesetzt\n"; $anzahl_neue_prestudent_id++; } } - else + else { $text .= "unbekannter Fehler\n"; $anzahl_fehler_prestudent++; @@ -88,7 +88,7 @@ if($result = $db->db_query($qry)) $anzahl_fehler_prestudent++; } } - else + else { $text.="Fehler bei Abfrage:".$db->db_last_error()."\n"; $anzahl_fehler_prestudent++; @@ -104,7 +104,7 @@ if($result = $db->db_query($qry)) $text.="\n\nKorrigiere Gruppenzuteilungen von Ab-/Unterbrechern\n"; //Alle Ab-/Unterbrecher holen die nicht im 0. Semester sind -$qry = "SELECT +$qry = "SELECT student_uid, tbl_student.studiengang_kz, tbl_prestudent.prestudent_id, @@ -118,17 +118,17 @@ $qry = "SELECT tbl_student.prestudent_id=tbl_prestudent.prestudent_id AND tbl_prestudent.prestudent_id=tbl_prestudentstatus.prestudent_id AND ( - tbl_prestudentstatus.status_kurzbz='Unterbrecher' OR + tbl_prestudentstatus.status_kurzbz='Unterbrecher' OR tbl_prestudentstatus.status_kurzbz='Abbrecher' ) AND - EXISTS (SELECT - * - FROM - public.tbl_studentlehrverband - WHERE - student_uid=tbl_student.student_uid AND - studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz AND + EXISTS (SELECT + * + FROM + public.tbl_studentlehrverband + WHERE + student_uid=tbl_student.student_uid AND + studiensemester_kurzbz=tbl_prestudentstatus.studiensemester_kurzbz AND semester<>0 ) "; @@ -140,20 +140,20 @@ if($result = $db->db_query($qry)) //Eintrag nur korrigieren wenn der Abbrecher/Unterbrecher Status der letzte in diesem Studiensemester ist $prestd = new prestudent(); $prestd->getLastStatus($row->prestudent_id, $row->studiensemester_kurzbz); - + if($prestd->status_kurzbz=='Unterbrecher' || $prestd->status_kurzbz=='Abbrecher') { //Studentlehrverbandeintrag aktualisieren $student = new student(); if($student->studentlehrverband_exists($row->student_uid, $row->studiensemester_kurzbz)) $student->new = false; - else + else { $student->new = true; $student->insertamum = date('Y-m-d H:i:s'); $student->insertvon = 'chkstudentlvb'; } - + $student->uid = $row->student_uid; $student->studiensemester_kurzbz=$row->studiensemester_kurzbz; $student->studiengang_kz = $row->studiengang_kz; @@ -162,7 +162,7 @@ if($result = $db->db_query($qry)) $student->gruppe = ' '; $student->updateamum = date('Y-m-d H:i:s'); $student->updatevon = 'chkstudentlvb'; - + //Pruefen ob der Lehrverband exisitert, wenn nicht dann wird er angelegt $lehrverband = new lehrverband(); if(!$lehrverband->exists($student->studiengang_kz, $student->semester, $student->verband, $student->gruppe)) @@ -172,16 +172,16 @@ if($result = $db->db_query($qry)) $lehrverband->verband = $student->verband; $lehrverband->gruppe = $student->gruppe; $lehrverband->bezeichnung = ($student->verband=='A'?'Abbrecher':'Unterbrecher'); - - $lehrverband->save(true); + + $lehrverband->save(true); } - + if($student->save_studentlehrverband()) { $text.="Student $student->uid wurde im $row->studiensemester_kurzbz in die Gruppe $student->semester$student->verband verschoben\n"; $abunterbrecher_verschoben++; } - else + else { $text.="Fehler biem Speichern des Lehrverbandeintrages bei $student->student_uid:".$student->errormsg."\n"; $abunterbrecher_verschoben_error++; @@ -200,20 +200,20 @@ $stsem = $stsem->getNearest(); $text.="\n\nKorrigiere Inkonsitenzen in den Tabellen tbl_studentlehrverband, tbl_student (Verwendetes Studiensemester: $stsem)\n\n"; -$qry = "SELECT +$qry = "SELECT tbl_student.studiengang_kz as studiengang_kz_old, tbl_student.semester as semester_old, tbl_student.verband as verband_old, - tbl_student.gruppe as gruppe_old, - tbl_studentlehrverband.student_uid, + tbl_student.gruppe as gruppe_old, + tbl_studentlehrverband.student_uid, tbl_studentlehrverband.studiengang_kz, tbl_studentlehrverband.semester, tbl_studentlehrverband.verband, - tbl_studentlehrverband.gruppe - FROM + tbl_studentlehrverband.gruppe + FROM public.tbl_student JOIN public.tbl_studentlehrverband USING(student_uid) - WHERE - tbl_studentlehrverband.studiensemester_kurzbz='$stsem' AND + WHERE + tbl_studentlehrverband.studiensemester_kurzbz=".$db->db_add_param($stsem)." AND ( tbl_student.studiengang_kz<>tbl_studentlehrverband.studiengang_kz OR tbl_student.semester<>tbl_studentlehrverband.semester OR @@ -225,20 +225,20 @@ if($result = $db->db_query($qry)) { while($row = $db->db_fetch_object($result)) { - $qry = "UPDATE public.tbl_student SET studiengang_kz='$row->studiengang_kz', semester='$row->semester', verband='$row->verband', gruppe='$row->gruppe' WHERE student_uid='$row->student_uid'"; + $qry = "UPDATE public.tbl_student SET studiengang_kz=".$db->db_add_param($row->studiengang_kz).", semester=".$db->db_add_param($row->semester).", verband=".$db->db_add_param($row->verband).", gruppe=".$db->db_add_param($row->gruppe)." WHERE student_uid=".$db->db_add_param($row->student_uid); if($db->db_query($qry)) { $text .= "Bei Student $row->student_uid wurde die Gruppenzuordnung von $row->studiengang_kz_old/$row->semester_old/$row->verband_old/$row->gruppe_old auf $row->studiengang_kz/$row->semester/$row->verband/$row->gruppe geaendert\n"; $anzahl_gruppenaenderung++; } - else + else { $text.="Fehler beim Aendern der Gruppe: ".$db->db_last_error()."\n"; $anzahl_gruppenaenderung_fehler++; } } } -else +else $text.="Fehler bei Abfrage".$db->db_last_error(); $statistik .= "Prestudent_id wurde bei $anzahl_neue_prestudent_id Studenten korrigiert\n"; @@ -252,9 +252,9 @@ $statistik .= "\n\n"; $mail = new mail(MAIL_ADMIN, 'vilesci@'.DOMAIN, 'CHECK Studentlehrverband', $statistik.$text); if($mail->send()) echo 'Mail an '.MAIL_ADMIN.' wurde versandt'; -else +else echo 'Fehler beim Versenden des Mails an '.MAIL_ADMIN; echo nl2br("\n\n".$statistik.$text); -?> \ No newline at end of file +?>