</form> </td> <td align="right"> <form name="suche" method="POST" action=""> Kartennummer (Lesegerät): <input type="text" value="" id="bmsuche" maxlength=12 size=12 name="bmsuche" tabindex="1"/> <input type="submit" name="submit" value="Suchen"> </form> </td> </tr></table>'; if (isset($_GET['searchstr']) || isset($_POST['bmsuche'])) { $bm_obj = new betriebsmittel(); $sql_query = ''; if (isset($_POST['bmsuche'])) { $bmsuche = strtoupper($_POST['bmsuche']); $kartennummer = $bm_obj->transform_kartennummer($bmsuche); $sql_query = "SELECT \n\t\t\t\t\t\tdistinct on(tbl_betriebsmittelperson.betriebsmittelperson_id)\n\t\t\t\t\t\ttbl_betriebsmittel.*,\n\t\t\t\t\t\ttbl_betriebsmittelperson.*,\n\t\t\t\t\t\ttbl_person.vorname, tbl_person.nachname,\n\t\t\t\t\t\ttbl_benutzer.uid, tbl_betriebsmittelperson.uid as bmpuid\n\t\t\t\t\tFROM \n\t\t\t\t\t\twawi.tbl_betriebsmittel \n\t\t\t\t\t\tJOIN wawi.tbl_betriebsmittelperson USING(betriebsmittel_id)\n\t\t\t\t\t\tJOIN public.tbl_person USING(person_id)\n\t\t\t\t\t\tLEFT JOIN public.tbl_benutzer USING(person_id)\n\t\t\t\t\tWHERE \n\t\t\t\t\t\t(\n\t\t\t\t\t\tupper(nummer) LIKE '%" . $db->db_escape($kartennummer) . "%'\n\t\t\t\t\t\tOR \n\t\t\t\t\t\tupper(nummer2) LIKE '%" . $db->db_escape($kartennummer) . "%'\n\t\t\t\t\t\tOR\n\t\t\t\t\t\tupper(nummer) LIKE '%" . $db->db_escape($bmsuche) . "%'\n\t\t\t\t\t\tOR \n\t\t\t\t\t\tupper(nummer2) LIKE '%" . $db->db_escape($bmsuche) . "%'\n\t\t\t\t\t\t)\t\t\t\t\t\t \n\t\t\t\t\t\tAND betriebsmitteltyp=" . $db->db_add_param($typ) . " LIMIT 30"; //echo $sql_query; } elseif (!empty($searchstr)) { $sql_query = ' SELECT distinct on(tbl_betriebsmittelperson.betriebsmittelperson_id) tbl_betriebsmittel.*, tbl_betriebsmittelperson.*, tbl_person.vorname, tbl_person.nachname, tbl_benutzer.uid, tbl_betriebsmittelperson.uid as bmpuid FROM wawi.tbl_betriebsmittel JOIN wawi.tbl_betriebsmittelperson USING(betriebsmittel_id) JOIN public.tbl_person USING(person_id) LEFT JOIN public.tbl_benutzer USING(person_id) ';
function generateMatrikelnummer($studiengang_kz, $studiensemester_kurzbz) { $db = new basis_db(); $jahr = mb_substr($studiensemester_kurzbz, 4); $sem = mb_substr($studiensemester_kurzbz, 0, 2); if ($sem == 'SS') { $jahr = $jahr - 1; } $art = 0; $matrikelnummer = sprintf("%02d", $jahr) . $art . sprintf("%04d", $studiengang_kz); $qry = "SELECT matrikelnr FROM public.tbl_student WHERE matrikelnr LIKE '" . $db->db_escape($matrikelnummer) . "%' ORDER BY matrikelnr DESC LIMIT 1"; if ($db->db_query($qry)) { if ($row = $db->db_fetch_object()) { $max = mb_substr($row->matrikelnr, 7); } else { $max = 0; } $max += 1; return $matrikelnummer . sprintf("%03d", $max); } else { return false; } }
<body class="background_main"> <h2>Personensuche</h2>'; $stg = new studiengang(); $stg->getAll('typ, kurzbz', false); $stg_arr = array(); foreach ($stg->result as $row) { $stg_arr[$row->studiengang_kz] = $row->kuerzel; } echo ' <form accept-charset="UTF-8" name="search" method="GET"> Bitte Suchbegriff eingeben: <input type="text" name="searchstr" size="30" value="' . $db->convert_html_chars($searchstr) . '"> <input type="submit" value="Suchen"> </form>'; if ($searchstr != '') { $qry = "SELECT person_id FROM public.tbl_person WHERE person_id in(\n\t\t\tSELECT distinct person_id FROM public.tbl_person LEFT JOIN public.tbl_benutzer USING(person_id) WHERE\n\t\t\tnachname ~* '" . $db->db_escape($searchstr) . "' OR \n\t\t\tvorname ~* '" . $db->db_escape($searchstr) . "' OR\n\t\t\talias ~* '" . $db->db_escape($searchstr) . "' OR\n\t\t\tCOALESCE(nachname,'') || ' ' || COALESCE(vorname,'') = '" . $db->db_escape($searchstr) . "' OR \n\t\t\tCOALESCE(vorname,'') || ' ' || COALESCE(nachname,'') = '" . $db->db_escape($searchstr) . "' OR \n\t\t\tuid ~* '" . $db->db_escape($searchstr) . "'\n\t\t\t) ORDER BY nachname, vorname;"; if ($result = $db->db_query($qry)) { $auth = new authentication(); echo $db->db_num_rows($result) . ' Person(en) gefunden<br><br>'; echo '<table>'; echo '<tr class="liste" align="center">'; echo "<td colspan='5'><b>Person</b></td>"; echo "<td colspan='4'><b>Benutzer</b></td>"; echo "<td colspan='4'><b>Mitarbeiter</b></td>"; echo "<td colspan='4'><b>Student</b></td>"; echo '</tr>'; echo '<tr class="liste" align="center">'; echo "<td><b>Nachname</b></td>"; echo "<td><b>Vorname</b></td>"; echo "<td><b>Gebdatum</b></td>"; echo "<td><b>updateAmUm</b></td>";
require_once '../../../include/benutzerberechtigung.class.php'; if (!($db = new basis_db())) { die('Fehler beim Oeffnen der Datenbankverbindung'); } $user = get_uid(); $rechte = new benutzerberechtigung(); $rechte->getBerechtigungen($user); if (!$rechte->isBerechtigt('lehre/reihungstest')) { die('Sie haben keine Berechtigung fuer diese Seite'); } if (isset($_REQUEST['autocomplete']) && $_REQUEST['autocomplete'] == 'prestudent') { $search = trim(isset($_REQUEST['term']) ? $_REQUEST['term'] : ''); if (is_null($search) || $search == '') { exit; } $qry = "SELECT \n\t\t\t\tnachname, vorname, prestudent_id, student_uid, \n\t\t\t\tUPPER(tbl_studiengang.typ || tbl_studiengang.kurzbz) as stg, \n\t\t\t\tget_rolle_prestudent(prestudent_id, null) as status\n\t\t\tFROM \n\t\t\t\tpublic.tbl_person \n\t\t\t\tJOIN public.tbl_prestudent USING(person_id)\n\t\t\t\tJOIN public.tbl_studiengang USING(studiengang_kz)\n\t\t\t\tLEFT JOIN public.tbl_student USING (prestudent_id)\n\t\t\tWHERE\n\t\t\t\tlower(nachname) like '%" . $db->db_escape(mb_strtolower($search)) . "%' OR\n\t\t\t\tlower(vorname) like '%" . $db->db_escape(mb_strtolower($search)) . "%' OR\n\t\t\t\tlower(nachname || ' ' || vorname) like '%" . $db->db_escape(mb_strtolower($search)) . "%' OR\n\t\t\t\tlower(vorname || ' ' || nachname) like '%" . $db->db_escape(mb_strtolower($search)) . "%' OR\n\t\t\t\tprestudent_id::text like '%" . $db->db_escape(mb_strtolower($search)) . "%' OR\n\t\t\t\tstudent_uid::text like '%" . $db->db_escape(mb_strtolower($search)) . "%'\n\t\t\t\tORDER BY nachname,vorname,stg \n\t\t\t\tLIMIT 10\n\t\t\t"; if ($result = $db->db_query($qry)) { $result_obj = array(); while ($row = $db->db_fetch_object($result)) { $item['vorname'] = html_entity_decode($row->vorname); $item['nachname'] = html_entity_decode($row->nachname); $item['stg'] = html_entity_decode($row->stg); $item['status'] = html_entity_decode($row->status); $item['prestudent_id'] = html_entity_decode($row->prestudent_id); $item['student_uid'] = html_entity_decode($row->student_uid); $result_obj[] = $item; } echo json_encode($result_obj); } exit; }