⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 databasehandler.php

📁 Network Administration Visualized 网络管理可视化源码
💻 PHP
📖 第 1 页 / 共 5 页
字号:
// Lister opp alle adresser knyttet til tidsprofiler, og henter ut k酶variabel  function listAlleVarsleAdresser($uid, $tid, $sort) {    //    print "<p>UID: $uid  - TID: $tid  - GID: $gid   - SORT: $sort";    $adr = NULL;        $sorts = array (    	'min, gnavn',     	'type',    	'adresse, gnavn',    	'vent, adresse'    	);    $querystring = '    SELECT alarmadresse.id AS adrid, adresse, type, vent, utstyrgruppe.id AS gid, utstyrgruppe.navn AS gnavn, 	    (Utstyrgruppe.accountid = ' . addslashes($uid). ') AS min     FROM Utstyrgruppe, Varsle, Alarmadresse     WHERE (utstyrgruppe.id = varsle.utstyrgruppeid) AND    	(alarmadresse.id = varsle.alarmadresseid) AND     	(varsle.tidsperiodeid = ' . addslashes($tid) . ') 		ORDER BY ' . $sorts[$sort];			//echo '<p>' . $querystring . '<p>';    if ( $query = pg_exec($this->connection, $querystring) ) {      $tot = pg_numrows($query); $row = 0;      while ( $row < $tot) {		$data = pg_fetch_array($query, $row, PGSQL_ASSOC);		$adr[$row][0] = $data["adrid"];		$adr[$row][1] = $data["adresse"];		$adr[$row][2] = $data["type"];		$adr[$row][3] = $data["vent"];		$adr[$row][4] = $data["gid"];		$adr[$row][5] = $data["gnavn"];		$adr[$row][6] = $data["min"];		$row++;      }     }  else {      $error = new Error(2);      $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }        return $adr;  }// Lister opp alle adresser knyttet til tidsprofiler for en gitt utstyrsgruppe, // og henter ut k酶variabel  function listVarsleAdresser($uid, $tid, $gid, $sort) {    //    print "<p>UID: $uid  - TID: $tid  - GID: $gid   - SORT: $sort";    $adr = NULL;        $sorts = array ('type, adresse', 'adresse');    $querystring = "SELECT id, adresse, type, vent 		FROM (     		SELECT adresse, id, type      		FROM Alarmadresse     		WHERE (accountid = " . addslashes($uid) . ")     	) AS adr LEFT OUTER JOIN (     		SELECT vent, alarmadresseid      		FROM Varsle     		WHERE (tidsperiodeid = " . addslashes($tid) . ")     			AND (utstyrgruppeid = " . addslashes($gid) . ")      	) AS periode     	ON (adr.id = periode.alarmadresseid)		ORDER BY " . $sorts[$sort];    if ( $query = pg_exec($this->connection, $querystring) ) {      $tot = pg_numrows($query); $row = 0;      while ( $row < $tot) {		$data = pg_fetch_array($query, $row, PGSQL_ASSOC);		$adr[$row][0] = $data["id"];		$adr[$row][1] = $data["adresse"];		$adr[$row][2] = $data["type"];		$adr[$row][3] = $data["vent"];		$row++;      }     }  else {      $error = new Error(2);      $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }        return $adr;  }  // Lister ut alle mulige filtermatch felter.  function listMatchField($sort) {        $matcher = NULL;        $sorts = array (        'name',        'matchfieldid'    );    $querystring = "SELECT matchfieldid, name, descr, valuehelp " .    	"FROM MatchField " .    	"ORDER BY " . $sorts[$sort];    if ( $query = @pg_exec($this->connection, $querystring) ) {        $tot = pg_numrows($query); $row = 0;        while ( $row < $tot) {            $data = pg_fetch_array($query, $row, PGSQL_ASSOC);            $matcher[$row][0] = $data["matchfieldid"];            $matcher[$row][1] = $data["name"];            $matcher[$row][2] = $data["descr"];            $matcher[$row][3] = $data["valuehelp"];            $row++;        }            }  else {        $error = new Error(2);        $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }        return $matcher;  }    // Hent ut info om et matchfield felt.  function matchFieldInfo($mid) {    $mf = NULL;    $querystring = "SELECT name, descr, valuehelp, valueid, valuename, valuecategory, valuesort, listlimit, showlist FROM MatchField WHERE matchfieldid = " . addslashes($mid) ;    if ( $query = pg_exec($this->connection, $querystring) AND pg_numrows($query) == 1 ) {        $data = pg_fetch_array($query, 0, PGSQL_ASSOC);	$mf[0] = $data["name"];	$mf[1] = $data["descr"];	$mf[2] = $data["valuehelp"];	$mf[3] = $data["valueid"];	$mf[4] = $data["valuename"];	$mf[5] = $data["valuecategory"];	$mf[6] = $data["valuesort"];	$mf[7] = $data["listlimit"];	$mf[8] = $data["showlist"];    }  else {      $error = new Error(2);      $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }        $querystring = "SELECT operatorid " .    	"FROM Operator " .        "WHERE matchfieldid = " . addslashes($mid) . " " .    	"ORDER BY operatorid ";    if ( $query = @pg_exec($this->connection, $querystring) ) {        $tot = pg_numrows($query); $row = 0;        while ( $row < $tot) {            $data = pg_fetch_array($query, $row, PGSQL_ASSOC);            $operators[] = $data["operatorid"];            $row++;        }            }  else {        $error = new Error(2);        $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }            $mf[9] = $operators;    return $mf;  }  // Liste alle profilene til en bruker  function listProfiler($uid, $sort) {        $profiler = NULL;    	   	$sorts = array (   		'aktiv DESC, Brukerprofil.navn',    		'Brukerprofil.navn',    		'Q.antall, aktiv DESC, Brukerprofil.navn');  	$querystring = "SELECT (Preference.activeprofile = Brukerprofil.id) AS aktiv,Brukerprofil.id, Brukerprofil.navn, Q.antallFROM Preference, Account, Brukerprofil LEFT OUTER JOIN     (SELECT pid, count(tid) AS antall FROM         (SELECT Tidsperiode.id AS tid, Brukerprofil.id AS pid FROM Tidsperiode, Brukerprofil         WHERE (Brukerprofil.accountid = " . addslashes($uid) . "            ) AND (Brukerprofil.id = Tidsperiode.brukerprofilid) ) AS Perioder         GROUP BY Perioder.pid ) AS Q     ON (Brukerprofil.id = Q.pid) WHERE (Brukerprofil.accountid = " . addslashes($uid) . ") AND (Account.id = Brukerprofil.accountid) AND    (Account.id = Preference.accountid) ORDER BY " . $sorts[$sort];    //print "<p>$querystring";    if ( $query = @pg_exec($this->connection, $querystring) ) {      $tot = pg_numrows($query); $row = 0;      while ( $row < $tot) {	$data = pg_fetch_array($query, $row, PGSQL_ASSOC);	$profiler[$row][0] = $data["id"]; 	$profiler[$row][1] = $data["navn"];	$profiler[$row][2] = $data["antall"];	$profiler[$row][3] = $data["aktiv"];	$row++;      }     }  else {      $error = new Error(2);      $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }        return $profiler;  }  // Liste alle tidsperiodene til en profil  function listPerioder($pid, $sort) {    $perioder = NULL;    #    $sorts = array ('time, minutt', 'aa, time, minutt', 'au, time, minutt', 'time, minutt');    $querystring = "SELECT Tidsper.id, Tidsper.helg, date_part('hour', Tidsper.starttid) AS time, date_part('minute', Tidsper.starttid) AS minutt, adresser.aa, grupper.au FROM (	SELECT id, helg, starttid 	FROM Tidsperiode 	WHERE (Tidsperiode.brukerprofilid = " . addslashes($pid) . ") ) AS Tidsper LEFT OUTER JOIN ( 	SELECT count(aid) AS aa, tid 	FROM ( 		SELECT DISTINCT Varsle.alarmadresseid AS aid, Varsle.tidsperiodeid AS tid 		FROM Varsle, Tidsperiode 		WHERE (Tidsperiode.brukerprofilid = " . addslashes($pid) . ") AND (Tidsperiode.id = Varsle.tidsperiodeid) 	) AS Acount 	GROUP BY tid ) AS adresser ON (Tidsper.id = adresser.tid) LEFT OUTER JOIN ( 	SELECT count(gid) AS au, tid 	FROM ( 		SELECT DISTINCT Varsle.utstyrgruppeid AS gid, Varsle.tidsperiodeid AS tid 		FROM Varsle, Tidsperiode 		WHERE (Tidsperiode.brukerprofilid = " . addslashes($pid) . ") AND (Tidsperiode.id = Varsle.tidsperiodeid) 	) AS Gcount 	GROUP BY tid ) AS grupper ON (Tidsper.id = grupper.tid) ORDER BY time, minutt";    if ( $query = pg_exec($this->connection, $querystring) ) {      $tot = pg_numrows($query); $row = 0;      while ( $row < $tot) {	$data = pg_fetch_array($query, $row, PGSQL_ASSOC);	$perioder[$row][0] = $data["id"]; 	$perioder[$row][1] = $data["helg"];	$perioder[$row][2] = $data["time"];	$perioder[$row][3] = $data["minutt"];	$perioder[$row][4] = $data["aa"];	$perioder[$row][5] = $data["au"];	$row++;      }     }  else {      $error = new Error(2);      $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }        return $perioder;  }	// Denne funksjonen returnerer en liste over alle tidsperioder som kr忙sjer, alts氓 har samme tid.        function listPeriodekonflikter($pid) {    $konf = NULL;        $querystring =  "SELECT antall, dag, starttid FROM (    SELECT count(id) AS antall, dag, starttid FROM (        SELECT id, 'hverdag' AS dag, starttid         FROM Tidsperiode         WHERE brukerprofilid = " . addslashes($pid) . " AND ((helg = 2) OR (helg = 1) )            UNION        SELECT id, 'helg' AS dag, starttid          FROM Tidsperiode         WHERE brukerprofilid = " . addslashes($pid) . " AND ((helg = 3) OR (helg = 1) )        ) AS subs    GROUP BY dag, starttid) AS subss WHERE antall > 1";          //print "<pre>" . $querystring . "</pre>";            if ( $query = pg_exec($this->connection, $querystring) ) {      $tot = pg_numrows($query); $row = 0;      while ( $row < $tot) {		$data = pg_fetch_array($query, $row, PGSQL_ASSOC);		$konf[$row][0] = $data["antall"];				$konf[$row][1] = $data["dag"];		$konf[$row][2] = $data["starttid"];		$row++;      }     }  else {      $error = new Error(2);      $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }    return $konf;         }	// Denne funksjonen returnerer alle utstyrgrupper som en Account har tilgang til, 	// enten man har laget den selv eller den er arvet gjennom DefaultUtstyr.  function listUtstyr($uid, $sort) {    $utst = NULL;        $sorts = array (    	'navn,id',    	'min,navn',    	'ap,navn',    	'af,navn');    $querystring = "SELECT * FROM (SELECT DISTINCT ON (id) id, navn, descr, min, Pcount.ap, FCount.af FROM (SELECT id, navn, descr, true AS min     FROM Utstyrgruppe     WHERE (accountid = " . addslashes($uid) . ")     UNION     SELECT Utstyrgruppe.id, Utstyrgruppe.navn, Utstyrgruppe.descr, (Utstyrgruppe.accountid = " . addslashes($uid). ") AS min     FROM Utstyrgruppe, DefaultUtstyr, AccountGroup, AccountInGroup     WHERE (AccountInGroup.accountid = " . addslashes($uid) . ")           AND (AccountInGroup.groupid = AccountGroup.id)           AND (AccountGroup.id = DefaultUtstyr.accountgroupid)           AND (DefaultUtstyr.utstyrgruppeid = Utstyrgruppe.id)     ) AS Tilgjengelig LEFT OUTER JOIN     (    SELECT count(tidsperiodeid) AS ap, utstyrgruppeid            FROM (                 SELECT DISTINCT ON (utstyrgruppeid,tidsperiodeid) tidsperiodeid, utstyrgruppeid                 FROM (                 	SELECT Varsle.utstyrgruppeid, Varsle.tidsperiodeid FROM Varsle, Tidsperiode, Brukerprofil                  	WHERE (Varsle.tidsperiodeid = Tidsperiode.id) AND                 		(Tidsperiode.brukerprofilid = Brukerprofil.id) AND                 		(Brukerprofil.accountid = " . addslashes($uid) . ")                 ) AS MinVarsle, Utstyrgruppe                 WHERE (Utstyrgruppe.id = MinVarsle.utstyrgruppeid)            ) AS X            GROUP BY utstyrgruppeid     ) AS PCount     ON (id = PCount.utstyrgruppeid)     LEFT OUTER JOIN (          SELECT count(utstyrfilterid) AS af, utstyrgruppeid          FROM (               SELECT utstyrfilterid, utstyrgruppeid               FROM GruppeTilFilter, Utstyrgruppe               WHERE ((Utstyrgruppe.accountid = " . addslashes($uid) . ") OR (Utstyrgruppe.accountid is null) )                     AND (Utstyrgruppe.id = GruppeTilFilter.utstyrgruppeid)          ) AS Y          GROUP BY utstyrgruppeid     ) AS FCount     ON (id = FCount.utstyrgruppeid) ) jalla ORDER BY " . $sorts[$sort];          //print "<pre>" . $querystring . "</pre>";         if ( $query = pg_exec($this->connection, $querystring) ) {      $tot = pg_numrows($query); $row = 0;      while ( $row < $tot) {		$data = pg_fetch_array($query, $row, PGSQL_ASSOC);		$utst[$row][0] = $data["id"];				$utst[$row][1] = $data["navn"];		$utst[$row][2] = $data["ap"];		$utst[$row][3] = $data["af"];		$utst[$row][4] = $data["min"];		$utst[$row][5] = $data["descr"];				$row++;      }     }  else {      $error = new Error(2);      $bruker{'errmsg'}= "Feil med datbasesp酶rring.";    }        return $utst;         }        	// Denne funksjonen returnerer alle utstyrgrupper som en Account har rettighet til,   function listUtstyrRettighet($uid, $sort) {    $utst = NULL;    #    $sorts = array ('time, minutt', 'aa, time, minutt', 'au, time, minutt', 'time, minutt');    $querystring = "SELECT DISTINCT ON (id) id, navn, descr FROM accountingroup, Rettighet, Utstyrgruppe WHERE (AccountInGroup.accountid = " . addslashes($uid) . ") AND 	(AccountInGroup.groupid = Rettighet.accountgroupid) AND 	(Rettighet.utstyrgruppeid = Utstyrgruppe.id)"; //print "<p>$querystring";    if ( $query = pg_exec($this->connection, $querystring) ) {      $tot = pg_numrows($query); $row = 0;      while ( $row < $tot) {		$data = pg_fetch_array($query, $row, PGSQL_ASSOC);		$utst[$row][0] = $data["id"]; 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -