- Datenbank Tabellen für Ampel System

- SQL Injection Bugfix im Abgabetool
This commit is contained in:
Andreas Österreicher
2011-10-18 10:39:10 +00:00
parent b663e93116
commit 1105e967d5
5 changed files with 143 additions and 79 deletions
+3 -3
View File
@@ -68,7 +68,7 @@ else
$paabgabe_id = (isset($_POST['paabgabe_id'])?$_POST['paabgabe_id']:'-1');
$fixtermin = (isset($_POST['fixtermin'])?1:0);
$datum = (isset($_POST['datum'])?$_POST['datum']:'');
$kurzbz = (isset($_POST['kurzbz'])?$_POST['kurzbz']:'');
$kurzbz = (isset($_POST['kurzbz'])?htmlspecialchars_decode($_POST['kurzbz']):'');
$paabgabetyp_kurzbz = (isset($_POST['paabgabetyp_kurzbz'])?$_POST['paabgabetyp_kurzbz']:'');
$betreuerart = (isset($_POST['betreuerart'])?$_POST['betreuerart']:'-1');
}
@@ -362,7 +362,7 @@ $result=@$db->db_query($qry);
$htmlstr .= "<form action='".$_SERVER['PHP_SELF']."' method='POST' name='".$row->projektarbeit_id."'>\n";
$htmlstr .= "<input type='hidden' name='projektarbeit_id' value='".$row->projektarbeit_id."'>\n";
$htmlstr .= "<input type='hidden' name='paabgabe_id' value='".$row->paabgabe_id."'>\n";
$htmlstr .= "<input type='hidden' name='titel' value='".$titel."'>\n";
$htmlstr .= "<input type='hidden' name='titel' value='".htmlspecialchars($titel,ENT_QUOTES)."'>\n";
$htmlstr .= "<input type='hidden' name='uid' value='".$uid."'>\n";
$htmlstr .= "<input type='hidden' name='betreuerart' value='".$betreuerart."'>\n";
$htmlstr .= "<input type='hidden' name='command' value='update'>\n";
@@ -434,7 +434,7 @@ $result=@$db->db_query($qry);
}
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='kurzbz' value='".$row->kurzbz."' size='60' maxlegth='256'></td>\n";
$htmlstr .= " <td><input type='text' name='kurzbz' value='".htmlspecialchars($row->kurzbz,ENT_QUOTES)."' size='60' maxlegth='256'></td>\n";
$htmlstr .= " <td>".($row->abgabedatum==''?'&nbsp;':$datum_obj->formatDatum($row->abgabedatum,'d.m.Y'))."</td>\n";
if($user==$row->insertvon && $betreuerart!="Zweitbegutachter")
{
+26 -26
View File
@@ -8608,7 +8608,7 @@
</WorkSpaceShapePEREntityPG83>
<WorkSpaceShapePEREntityPG83 ObjectType="2502" CSAOName="WorkSpaceShapePEREntityPG83">
<Id>{B9DEDF57-70C8-449B-A293-70B3FD6E5423}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{BC624EDC-C3D8-435A-9E4F-6EA3903606C9}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -8625,7 +8625,7 @@
<Top>2014</Top>
<Left>10249</Left>
<z>0</z>
<Width>461</Width>
<Width>635</Width>
<Height>200</Height>
<dz>0</dz>
<RecalculateSizes>1</RecalculateSizes>
@@ -25060,7 +25060,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{1A59AE5E-6E8A-4206-BAA4-6BDB21F43D4D}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{0F64FCFE-9AB2-4F15-AD87-EC8938859E96}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -25103,7 +25103,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{FE526FF6-5293-4905-A790-F5E3196D20C0}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{906F442C-4FBF-4391-87F4-7DF6181117CA}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -27439,7 +27439,7 @@
</WorkSpaceShapePEREntityPG83>
<WorkSpaceShapePEREntityPG83 ObjectType="2502" CSAOName="WorkSpaceShapePEREntityPG83">
<Id>{0CD0899C-7A52-4F35-AC37-1239971710E8}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{A75D23A9-DF85-49B6-BF4C-EF5620D5C9C9}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -27456,7 +27456,7 @@
<Top>1878</Top>
<Left>9904</Left>
<z>0</z>
<Width>861</Width>
<Width>1034</Width>
<Height>239</Height>
<dz>0</dz>
<RecalculateSizes>1</RecalculateSizes>
@@ -31072,7 +31072,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{7B8CE405-BDC0-45F6-A363-B5752C604C68}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{AA1A4157-8BE2-45C5-B5B8-7D43EB826C5F}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -31092,7 +31092,7 @@
<WorkSpaceShape2>
<Id>{0CD0899C-7A52-4F35-AC37-1239971710E8}</Id>
</WorkSpaceShape2>
<NamePositionX>10229</NamePositionX>
<NamePositionX>10272</NamePositionX>
<NamePositionY>2156</NamePositionY>
<Points>
<Point>
@@ -31104,18 +31104,18 @@
<y>2284</y>
</Point>
<Point>
<x>10334</x>
<x>10421</x>
<y>2148</y>
</Point>
<Point>
<x>10334</x>
<x>10421</x>
<y>2117</y>
</Point>
</Points>
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{6D2DB2DC-B510-4B7D-AA68-B7A83812FEF9}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{8E353C50-1324-41BD-8399-A0D9D6F0E85D}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -45346,7 +45346,7 @@
</WorkSpaceShapePEREntityPG83>
<WorkSpaceShapePEREntityPG83 ObjectType="2502" CSAOName="WorkSpaceShapePEREntityPG83">
<Id>{83E5A90A-BEBA-4E65-BEFE-A3D6A4DF0A5D}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{2F59D7A8-75B3-475D-BE20-CD666048D8F0}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -46143,7 +46143,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{83484ADE-6B40-490C-90EE-E08E37812569}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{53EDEAFC-6C0C-480A-8766-B3F48B40FC81}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -46169,7 +46169,7 @@
</WorkSpaceLinePERRelationPG83>
<WorkSpaceLinePERRelationPG83 ObjectType="2504" CSAOName="WorkSpaceLinePERRelationPG83">
<Id>{CB79BCE5-2A7D-4A17-A9DE-4E5DB0DD4A14}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{5528233B-9692-4021-AF09-1D4871FFD98D}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -46321,7 +46321,7 @@
<Company>Technikum Wien</Company>
<Version>2.0</Version>
<CreatedDate>2009-04-17T11:15:21.000+02:00</CreatedDate>
<ModifiedDate>2011-10-07T09:56:00.301+02:00</ModifiedDate>
<ModifiedDate>2011-10-17T16:45:22.409+02:00</ModifiedDate>
<Project>FH-Complete 2.0</Project>
<Description>&lt;?xml-stylesheet type="text/xsl" href="FHCompleteTDM3PG83.xsl"?&gt;
</Description>
@@ -142494,7 +142494,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
</PEREntityPG83>
<PEREntityPG83 ObjectType="2002" CSAOName="PEREntityPG83">
<Id>{AE5C8997-821F-42C7-86A7-BD8015270945}</Id>
<Name>tbl_ampel_benutzer</Name>
<Name>tbl_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{7F1E29A1-9E7C-419D-88F4-07B135C25880}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -142506,7 +142506,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<AfterScript></AfterScript>
<Notes></Notes>
<Comments></Comments>
<Caption>tbl_ampel_benutzer</Caption>
<Caption>tbl_ampel_benutzer_bestaetigt</Caption>
<Size>0</Size>
<Relations>
<Id>{E3FC2220-C7ED-49DE-9F5E-7D2589A4FD20}</Id>
@@ -142515,7 +142515,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<Attributes>
<PERAttributePG83 ObjectType="2003" CSAOName="PERAttributePG83">
<Id>{4716794B-43AF-4085-BED8-54F00F7AD07E}</Id>
<Name>ampel_benutzer_id</Name>
<Name>ampel_benutzer_bestaetigt_id</Name>
<Ordinal>1</Ordinal>
<HistoryID>{2AE40F8A-87D0-4EAD-B7B7-00D6E7C239CE}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -142533,7 +142533,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<DefaultValue></DefaultValue>
<NotNull>1</NotNull>
<Migrated>0</Migrated>
<Caption>ampel_benutzer_id</Caption>
<Caption>ampel_benutzer_bestaetigt_id</Caption>
<Unique>0</Unique>
<OriginalName></OriginalName>
<CheckConstraint></CheckConstraint>
@@ -142574,7 +142574,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<DataTypeParam2></DataTypeParam2>
<KeepForeignKey>0</KeepForeignKey>
<DefaultValue></DefaultValue>
<NotNull>0</NotNull>
<NotNull>1</NotNull>
<Migrated>1</Migrated>
<Caption>ampel_id</Caption>
<Unique>0</Unique>
@@ -142617,7 +142617,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<DataTypeParam2></DataTypeParam2>
<KeepForeignKey>0</KeepForeignKey>
<DefaultValue></DefaultValue>
<NotNull>0</NotNull>
<NotNull>1</NotNull>
<Migrated>1</Migrated>
<Caption>uid</Caption>
<Unique>0</Unique>
@@ -142744,7 +142744,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<KeyItems>
<PERKeyConstraintItemPG83 ObjectType="2011" CSAOName="PERKeyConstraintItemPG83">
<Id>{70CF5C5E-D0E6-4E5F-8D36-CBF3F253DB99}</Id>
<Name>ampel_benutzer_id</Name>
<Name>ampel_benutzer_bestaetigt_id</Name>
<Ordinal>0</Ordinal>
<HistoryID>{A2B344FC-F1BF-4C9A-BE0E-295DEFC4498D}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -165253,7 +165253,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
</PERRelationPG83>
<PERRelationPG83 ObjectType="2004" CSAOName="PERRelationPG83">
<Id>{E3FC2220-C7ED-49DE-9F5E-7D2589A4FD20}</Id>
<Name>fk_ampel_ampel_benutzer</Name>
<Name>fk_ampel_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{DBC6B468-2DD6-4E02-A563-3BC4126F6BB8}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -165271,7 +165271,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<MandatoryChild>0</MandatoryChild>
<CardinalityChild>-1</CardinalityChild>
<InverseName></InverseName>
<Caption>fk_ampel_ampel_benutzer</Caption>
<Caption>fk_ampel_ampel_benutzer_bestaetigt</Caption>
<InverseCaption></InverseCaption>
<RefIntegrityParentUpdate>0</RefIntegrityParentUpdate>
<RefIntegrityParentDelete>0</RefIntegrityParentDelete>
@@ -165311,7 +165311,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
</PERRelationPG83>
<PERRelationPG83 ObjectType="2004" CSAOName="PERRelationPG83">
<Id>{F644BCC8-498F-484C-AF4A-F34DECA37F2C}</Id>
<Name>fk_benutzer_ampel_benutzer</Name>
<Name>fk_benutzer_ampel_benutzer_bestaetigt</Name>
<Ordinal>0</Ordinal>
<HistoryID>{A38E2BF8-70FC-4F18-B497-3D2AA1475434}</HistoryID>
<GlobalOrder>0</GlobalOrder>
@@ -165329,7 +165329,7 @@ Wenn FALSE haengt die Anzahl der Fragen pro Level von der Gesamtzahl pro Level a
<MandatoryChild>0</MandatoryChild>
<CardinalityChild>-1</CardinalityChild>
<InverseName></InverseName>
<Caption>fk_benutzer_ampel_benutzer</Caption>
<Caption>fk_benutzer_ampel_benutzer_bestaetigt</Caption>
<InverseCaption></InverseCaption>
<RefIntegrityParentUpdate>0</RefIntegrityParentUpdate>
<RefIntegrityParentDelete>0</RefIntegrityParentDelete>
+64
View File
@@ -2835,6 +2835,68 @@ if(!$result = @$db->db_query("SELECT ende FROM fue.tbl_projekttask"))
else
echo 'fue.tbl_projekttask: Spalte ende und ressource_id hinzugefuegt!<br>';
}
//public.tbl_ampel Tabellen fuer Ampelsystem
if(!$result = @$db->db_query("SELECT 1 FROM public.tbl_ampel"))
{
$qry = "
CREATE SEQUENCE public.seq_ampel_ampel_id
INCREMENT BY 1
NO MAXVALUE
NO MINVALUE
CACHE 1;
CREATE SEQUENCE public.seq_ampel_benutzer_bestaetigt_ampel_benutzer_bestaetigt_id
INCREMENT BY 1
NO MAXVALUE
NO MINVALUE
CACHE 1;
CREATE TABLE public.tbl_ampel
(
ampel_id bigint NOT NULL,
kurzbz varchar(64),
beschreibung text,
benutzer_select text NOT NULL,
deadline date NOT NULL,
vorlaufzeit smallint NOT NULL,
verfallszeit smallint NOT NULL,
insertamum timestamp,
insertvon varchar(32),
updateamum timestamp,
updatevon varchar(32)
);
CREATE TABLE public.tbl_ampel_benutzer_bestaetigt
(
ampel_benutzer_bestaetigt_id bigint NOT NULL,
ampel_id integer NOT NULL,
uid varchar(32) NOT NULL,
insertamum timestamp,
insertvon varchar(32)
);
ALTER TABLE public.tbl_ampel ADD CONSTRAINT pk_tbl_ampel PRIMARY KEY (ampel_id);
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ADD CONSTRAINT pk_tbl_ampel_benutzer_bestaetigt PRIMARY KEY (ampel_benutzer_bestaetigt_id);
ALTER TABLE public.tbl_ampel ALTER COLUMN ampel_id SET DEFAULT nextval('public.seq_ampel_ampel_id');
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ALTER COLUMN ampel_benutzer_bestaetigt_id SET DEFAULT nextval('public.seq_ampel_benutzer_bestaetigt_ampel_benutzer_bestaetigt_id');
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ADD CONSTRAINT fk_ampel_ampel_benutzer_bestaetigt FOREIGN KEY (ampel_id) REFERENCES public.tbl_ampel (ampel_id) ON DELETE CASCADE ON UPDATE CASCADE;
ALTER TABLE public.tbl_ampel_benutzer_bestaetigt ADD CONSTRAINT fk_benutzer_ampel_benutzer_bestaetigt FOREIGN KEY (uid) REFERENCES public.tbl_benutzer (uid) ON DELETE CASCADE ON UPDATE CASCADE;
GRANT SELECT, UPDATE, INSERT, DELETE ON public.tbl_ampel TO vilesci;
GRANT SELECT ON public.tbl_ampel TO web;
GRANT SELECT, UPDATE, INSERT, DELETE ON public.tbl_ampel_benutzer_bestaetigt TO vilesci;
GRANT SELECT, UPDATE, INSERT, DELETE ON public.tbl_ampel_benutzer_bestaetigt TO web;
";
if(!$db->db_query($qry))
echo '<strong>public.tbl_ampel: '.$db->db_last_error().'</strong><br>';
else
echo 'public.tbl_ampel: Tabellen fuer Ampelsystem hinzugefuegt!<br>';
}
echo '<br>';
$tabellen=array(
@@ -2932,6 +2994,8 @@ $tabellen=array(
"lehre.tbl_zeugnisnote" => array("lehrveranstaltung_id","student_uid","studiensemester_kurzbz","note","uebernahmedatum","benotungsdatum","bemerkung","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_adresse" => array("adresse_id","person_id","name","strasse","plz","ort","gemeinde","nation","typ","heimatadresse","zustelladresse","firma_id","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_akte" => array("akte_id","person_id","dokument_kurzbz","uid","inhalt","mimetype","erstelltam","gedruckt","titel","bezeichnung","updateamum","updatevon","insertamum","insertvon","ext_id"),
"public.tbl_ampel" => array("ampel_id","kurzbz","beschreibung","benutzer_select","deadline","vorlaufzeit","verfallszeit","insertamum","insertvon","updateamum","updatevon"),
"public.tbl_ampel_benutzer_bestaetigt" => array("ampel_benutzer_bestaetigt_id","ampel_id","uid","insertamum","insertvon"),
"public.tbl_aufmerksamdurch" => array("aufmerksamdurch_kurzbz","beschreibung","ext_id"),
"public.tbl_aufnahmeschluessel" => array("aufnahmeschluessel"),
"public.tbl_bankverbindung" => array("bankverbindung_id","person_id","name","anschrift","bic","blz","iban","kontonr","typ","verrechnung","updateamum","updatevon","insertamum","insertvon","ext_id"),
+31 -31
View File
@@ -74,7 +74,7 @@ if(!isset($_POST['uid']))
JOIN lehre.tbl_lehrveranstaltung USING(studiengang_kz)
JOIN lehre.tbl_lehreinheit USING(lehrveranstaltung_id)
JOIN lehre.tbl_projektarbeit USING(lehreinheit_id)
WHERE projektarbeit_id='$projektarbeit_id'";
WHERE projektarbeit_id='".addslashes($projektarbeit_id)."'";
if($result_stg=$db->db_query($qry_stg))
{
if($row_stg=$db->db_fetch_object($result_stg))
@@ -109,7 +109,7 @@ else
$paabgabetyp_kurzbz = (isset($_POST['paabgabetyp_kurzbz'])?$_POST['paabgabetyp_kurzbz']:'-1');
$fixtermin = (isset($_POST['fixtermin'])?1:0);
$datum = (isset($_POST['datum'])?$_POST['datum']:'');
$kurzbz = (isset($_POST['kurzbz'])?$_POST['kurzbz']:'');
$kurzbz = (isset($_POST['kurzbz'])?htmlspecialchars_decode($_POST['kurzbz']):'');
$erst = (isset($_POST['erst'])?$_POST['erst']:'');
$stgbez = (isset($_POST['stgbez'])?$_POST['stgbez']:'');
$stg_kz = (isset($_POST['stg_kz'])?$_POST['stg_kz']:'');
@@ -171,8 +171,8 @@ if(isset($_POST["schick"]))
if($command=='insert')
{
$qrychk="SELECT * FROM campus.tbl_paabgabe
WHERE projektarbeit_id='$projektarbeit_id' AND paabgabetyp_kurzbz='$paabgabetyp_kurzbz'
AND fixtermin=".($fixtermin==1?'true':'false')." AND datum='$datum' AND kurzbz='$kurzbz'";
WHERE projektarbeit_id='".addslashes($projektarbeit_id)."' AND paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."'
AND fixtermin=".($fixtermin==1?'true':'false')." AND datum='".addslashes($datum)."' AND kurzbz='".addslashes($kurzbz)."'";
if($result=$db->db_query($qrychk))
{
if($db->db_num_rows($result)>0)
@@ -183,7 +183,7 @@ if(isset($_POST["schick"]))
{
//neuer Termin
$qry="INSERT INTO campus.tbl_paabgabe (projektarbeit_id, paabgabetyp_kurzbz, fixtermin, datum, kurzbz, abgabedatum, insertvon, insertamum, updatevon, updateamum)
VALUES ('$projektarbeit_id', '$paabgabetyp_kurzbz', ".($fixtermin==1?'true':'false').", '$datum', '$kurzbz', NULL, '$user', now(), NULL, NULL)";
VALUES ('".addslashes($projektarbeit_id)."', '".addslashes($paabgabetyp_kurzbz)."', ".($fixtermin==1?'true':'false').", '".addslashes($datum)."', '".addslashes($kurzbz)."', NULL, '".addslashes($user)."', now(), NULL, NULL)";
//echo $qry;
if(!$result=$db->db_query($qry))
{
@@ -192,7 +192,7 @@ if(isset($_POST["schick"]))
else
{
$row=$db->db_fetch_object($result);
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$paabgabetyp_kurzbz."'";
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."'";
if($result_typ=$db->db_query($qry_typ))
{
$row_typ=$db->db_fetch_object($result_typ);
@@ -223,7 +223,7 @@ if(isset($_POST["schick"]))
FROM public.tbl_person JOIN lehre.tbl_projektbetreuer ON(lehre.tbl_projektbetreuer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid)
WHERE mitarbeiter_uid='$erst'";
WHERE mitarbeiter_uid='".addslashes($erst)."'";
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">Fehler beim Laden des Erstbegutachters!</font><br>";
@@ -255,7 +255,7 @@ if(isset($_POST["schick"]))
$qry_betr="SELECT DISTINCT trim(COALESCE(titelpre,'')||' '||COALESCE(vorname,'')||' '||COALESCE(nachname,'')||' '||COALESCE(titelpost,'')) as first,
anrede, kontakt
FROM public.tbl_person JOIN public.tbl_kontakt USING(person_id)
WHERE person_id='$p2id' AND kontakttyp='email' AND zustellung LIMIT 1";
WHERE person_id='".addslashes($p2id)."' AND kontakttyp='email' AND zustellung LIMIT 1";
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">Fehler beim Laden des Zweitbegutachters!</font><br>";
@@ -295,7 +295,7 @@ if(isset($_POST["schick"]))
{
//Terminänderung
//Ermittlung der alten Daten
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".$paabgabe_id."'";
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".addslashes($paabgabe_id)."'";
if(!$result_old=$db->db_query($qry_old))
{
echo "<font color=\"#FF0000\">Termin konnte nicht gefunden werden!</font><br>&nbsp;";
@@ -304,7 +304,7 @@ if(isset($_POST["schick"]))
{
$row_old=$db->db_fetch_object($result_old);
//Abgabetyp
$qry_told="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$row_old->paabgabetyp_kurzbz."'";
$qry_told="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($row_old->paabgabetyp_kurzbz)."'";
if($result_told=$db->db_query($qry_told))
{
$row_told=$db->db_fetch_object($result_told);
@@ -316,14 +316,14 @@ if(isset($_POST["schick"]))
}
//Termin updaten
$qry="UPDATE campus.tbl_paabgabe SET
projektarbeit_id = '".$projektarbeit_id."',
paabgabetyp_kurzbz = '".$paabgabetyp_kurzbz."',
projektarbeit_id = '".addslashes($projektarbeit_id)."',
paabgabetyp_kurzbz = '".addslashes($paabgabetyp_kurzbz)."',
fixtermin = ".($fixtermin==1?'true':'false').",
datum = '".$datum."',
kurzbz = '".$kurzbz."',
updatevon = '".$user."',
datum = '".addslashes($datum)."',
kurzbz = '".addslashes($kurzbz)."',
updatevon = '".addslashes($user)."',
updateamum = now()
WHERE paabgabe_id='".$paabgabe_id."'";
WHERE paabgabe_id='".addslashes($paabgabe_id)."'";
//echo $qry;
if(!$result=$db->db_query($qry))
{
@@ -332,7 +332,7 @@ if(isset($_POST["schick"]))
else
{
//Abgabetyp
$qry_told="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$paabgabetyp_kurzbz."'";
$qry_told="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz)."'";
if($result_told=$db->db_query($qry_told))
{
$row_typ=$db->db_fetch_object($result_told);
@@ -364,7 +364,7 @@ if(isset($_POST["schick"]))
FROM public.tbl_person JOIN lehre.tbl_projektbetreuer ON(lehre.tbl_projektbetreuer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid)
WHERE mitarbeiter_uid='$erst'";
WHERE mitarbeiter_uid='".addslashes($erst)."'";
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">Fehler beim Laden von Erstbegutachter(in)!</font><br>";
@@ -396,7 +396,7 @@ if(isset($_POST["schick"]))
$qry_betr="SELECT DISTINCT trim(COALESCE(titelpre,'')||' '||COALESCE(vorname,'')||' '||COALESCE(nachname,'')||' '||COALESCE(titelpost,'')) as first,
anrede, kontakt
FROM public.tbl_person JOIN public.tbl_kontakt USING(person_id)
WHERE person_id='$p2id' AND kontakttyp='email' AND zustellung LIMIT 1";
WHERE person_id='".addslashes($p2id)."' AND kontakttyp='email' AND zustellung LIMIT 1";
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">Fehler beim Laden von Zweitbegutachter(in)!</font><br>";
@@ -441,7 +441,7 @@ if(isset($_POST["del"]))
if($datum)
{
//Ermittlung der alten Daten
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".$paabgabe_id."'";
$qry_old="SELECT * FROM campus.tbl_paabgabe WHERE paabgabe_id='".addslashes($paabgabe_id)."'";
if(!$result_old=$db->db_query($qry_old))
{
echo "<font color=\"#FF0000\">Termin konnte nicht gefunden werden!</font><br>&nbsp;";
@@ -449,7 +449,7 @@ if(isset($_POST["del"]))
else
{
$row_old=$db->db_fetch_object($result_old);
$qry_std="SELECT * FROM campus.vw_benutzer where uid='$uid'";
$qry_std="SELECT * FROM campus.vw_benutzer where uid='".addslashes($uid)."'";
if(!$result_std=$db->db_query($qry_std))
{
echo "<font color=\"#FF0000\">Student konnte nicht gefunden werden!</font><br>&nbsp;";
@@ -457,7 +457,7 @@ if(isset($_POST["del"]))
else
{
$row_std=$db->db_fetch_object($result_std);
$qry="DELETE FROM campus.tbl_paabgabe WHERE paabgabe_id='".$paabgabe_id."'";
$qry="DELETE FROM campus.tbl_paabgabe WHERE paabgabe_id='".addslashes($paabgabe_id)."'";
if(!$result=$db->db_query($qry))
{
echo "<font color=\"#FF0000\">Fehler beim L&ouml;schen des Termins!</font><br>&nbsp;";
@@ -486,7 +486,7 @@ if(isset($_POST["del"]))
FROM public.tbl_person JOIN lehre.tbl_projektbetreuer ON(lehre.tbl_projektbetreuer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid)
WHERE mitarbeiter_uid='$erst'";
WHERE mitarbeiter_uid='".addslashes($erst)."'";
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">Fehler beim Laden der Betreuer!</font><br>&nbsp;";
@@ -518,7 +518,7 @@ if(isset($_POST["del"]))
$qry_betr="SELECT DISTINCT trim(COALESCE(titelpre,'')||' '||COALESCE(vorname,'')||' '||COALESCE(nachname,'')||' '||COALESCE(titelpost,'')) as first,
anrede, kontakt
FROM public.tbl_person JOIN public.tbl_kontakt USING(person_id)
WHERE person_id='$p2id' AND kontakttyp='email' AND zustellung LIMIT 1";
WHERE person_id='".addslashes($p2id)."' AND kontakttyp='email' AND zustellung LIMIT 1";
if(!$betr=$db->db_query($qry_betr))
{
echo "<font color=\"#FF0000\">Fehler beim Laden von Zweitbegutachter(in)!</font><br>&nbsp;";
@@ -561,9 +561,9 @@ if(isset($_POST["enda"]))
//Abgabetermin mit akt. Datum speichern
$qry="UPDATE campus.tbl_paabgabe SET
abgabedatum = now(),
updatevon = '".$user."',
updatevon = '".addslashes($user)."',
updateamum = now()
WHERE paabgabe_id='".$paabgabe_id."'";
WHERE paabgabe_id='".addslashes($paabgabe_id)."'";
//echo $qry;
if(!$result=$db->db_query($qry))
{
@@ -580,9 +580,9 @@ if(isset($_POST["note"]))
//Abgabetermin mit akt. Datum speichern
$qry="UPDATE campus.tbl_paabgabe SET
abgabedatum = now(),
updatevon = '".$user."',
updatevon = '".addslashes($user)."',
updateamum = now()
WHERE paabgabe_id='".$paabgabe_id."'";
WHERE paabgabe_id='".addslashes($paabgabe_id)."'";
//echo $qry;
if(!$result=$db->db_query($qry))
{
@@ -594,14 +594,14 @@ if(isset($_POST["note"]))
}
}
$studentenname='';
$qry_nam="SELECT trim(COALESCE(vorname,'')||' '||COALESCE(nachname,'')) as studnam FROM campus.vw_student WHERE uid='$uid'";
$qry_nam="SELECT trim(COALESCE(vorname,'')||' '||COALESCE(nachname,'')) as studnam FROM campus.vw_student WHERE uid='".addslashes($uid)."'";
$result_nam=$db->db_query($qry_nam);
while ($result_nam && $row_nam=$db->db_fetch_object($result_nam))
{
$studentenname=$row_nam->studnam;
}
$qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".$projektarbeit_id."' ORDER BY datum;";
$qry="SELECT * FROM campus.tbl_paabgabe WHERE projektarbeit_id='".addslashes($projektarbeit_id)."' ORDER BY datum;";
$htmlstr .= "<table width=100%>\n";
$htmlstr .= "<tr><td style='font-size:16px'>Student: <b>".$studentenname."</b></td><td align='right'><a href='".CIS_ROOT."cis/private/lehre/abgabe_student_frameset.php?uid=$uid' target='_blank'>Studentenansicht</a></td></tr>";
$htmlstr .= "<tr><td style='font-size:16px'>Titel: <b>".$titel."<b><br></td>";
@@ -682,7 +682,7 @@ $htmlstr .= "<tr><td>fix</td><td>Datum</td><td>Abgabetyp</td><td>Kurzbeschreibun
}
}
$htmlstr .= " </select></td>\n";
$htmlstr .= " <td><input type='text' name='kurzbz' value='".$row->kurzbz."' size='60' maxlegth='256'></td>\n";
$htmlstr .= " <td><input type='text' name='kurzbz' value='".htmlspecialchars($row->kurzbz,ENT_QUOTES)."' size='60' maxlegth='256'></td>\n";
$htmlstr .= " <td>".($row->abgabedatum==''?'&nbsp;':$datum_obj->formatDatum($row->abgabedatum,'d.m.Y'))."</td>\n";
$htmlstr .= " <td><input type='submit' name='schick' value='speichern' title='Termin&auml;nderung speichern'></td>";
+19 -19
View File
@@ -27,17 +27,17 @@
* für Diplom- und Bachelorarbeiten
*******************************************************************************************************/
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/basis_db.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/mail.class.php');
require_once('../../config/vilesci.config.inc.php');
require_once('../../include/basis_db.class.php');
require_once('../../include/functions.inc.php');
require_once('../../include/studiengang.class.php');
require_once('../../include/datum.class.php');
require_once('../../include/benutzerberechtigung.class.php');
require_once('../../include/mail.class.php');
if (!$db = new basis_db())
die('Es konnte keine Verbindung zum Server aufgebaut werden.');
$i=0;
$zaehl=0;
@@ -72,7 +72,7 @@ $paabgabetyp_kurzbz = (isset($_POST['paabgabetyp_kurzbz'])?$_POST['paabgabetyp_k
$stg_kz = (isset($_POST['stg_kz'])?$_POST['stg_kz']:'');
$p2id = (isset($_POST['p2id'])?$_POST['p2id']:'');
$qry_stg="SELECT * FROM public.tbl_studiengang WHERE studiengang_kz='$stg_kz'";
$qry_stg="SELECT * FROM public.tbl_studiengang WHERE studiengang_kz='".addslashes($stg_kz)."'";
if($result_stg=$db->db_query($qry_stg))
{
if($row_stg=$db->db_fetch_object($result_stg))
@@ -105,7 +105,7 @@ $stg_arr = array();
$rechte = new benutzerberechtigung();
$rechte->getBerechtigungen($user);
if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', null, 'suid', $fachbereich_kurzbz) )
if(!$rechte->isBerechtigt('admin', $stg_kz, 'suid') && !$rechte->isBerechtigt('assistenz', $stg_kz, 'suid'))
die('Sie haben keine Berechtigung für diesen Studiengang');
$datum_obj = new datum();
@@ -150,8 +150,8 @@ if(isset($_POST["schick"]) && $error=='')
{
//schleife termine
$qrychk="SELECT * FROM campus.tbl_paabgabe
WHERE projektarbeit_id='".$termine[$j]."' AND paabgabetyp_kurzbz='$paabgabetyp_kurzbz[$x]'
AND fixtermin=".($fixtermin[$x]==1?'true':'false')." AND datum='$datum[$x]' AND kurzbz='$kurzbz[$x]'";
WHERE projektarbeit_id='".addslashes($termine[$j])."' AND paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz[$x])."'
AND fixtermin=".($fixtermin[$x]==1?'true':'false')." AND datum='".addslashes($datum[$x])."' AND kurzbz='".addslashes($kurzbz[$x])."'";
//echo $qrychk;
if($result=$db->db_query($qrychk))
{
@@ -163,7 +163,7 @@ if(isset($_POST["schick"]) && $error=='')
{
//echo "neuer Termin";
$qry="INSERT INTO campus.tbl_paabgabe (projektarbeit_id, paabgabetyp_kurzbz, fixtermin, datum, kurzbz, abgabedatum, insertvon, insertamum, updatevon, updateamum)
VALUES ('".$termine[$j]."', '$paabgabetyp_kurzbz[$x]', ".($fixtermin[$x]==1?'true':'false').", '$datum[$x]', '$kurzbz[$x]', NULL, '$user', now(), NULL, NULL)";
VALUES ('".addslashes($termine[$j])."', '".addslashes($paabgabetyp_kurzbz[$x])."', ".($fixtermin[$x]==1?'true':'false').", '".addslashes($datum[$x])."', '".addslashes($kurzbz[$x])."', NULL, '".addslashes($user)."', now(), NULL, NULL)";
//echo $qry;
if(!$result=$db->db_query($qry))
{
@@ -172,7 +172,7 @@ if(isset($_POST["schick"]) && $error=='')
else
{
$row=@$db->db_fetch_object($result);
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".$paabgabetyp_kurzbz[$x]."'";
$qry_typ="SELECT bezeichnung FROM campus.tbl_paabgabetyp WHERE paabgabetyp_kurzbz='".addslashes($paabgabetyp_kurzbz[$x])."'";
if($result_typ=$db->db_query($qry_typ))
{
$row_typ=$db->db_fetch_object($result_typ);
@@ -191,7 +191,7 @@ if(isset($_POST["schick"]) && $error=='')
}
}
//Student zu projektarbeit_id suchen
$qry_std="SELECT * FROM campus.vw_student WHERE uid IN(SELECT student_uid FROM lehre.tbl_projektarbeit WHERE projektarbeit_id=$termine[$j])";
$qry_std="SELECT * FROM campus.vw_student WHERE uid IN(SELECT student_uid FROM lehre.tbl_projektarbeit WHERE projektarbeit_id='".addslashes($termine[$j])."')";
if($result_std=$db->db_query($qry_std))
{
//Mail an Studierenden
@@ -217,7 +217,7 @@ if(isset($_POST["schick"]) && $error=='')
FROM public.tbl_person JOIN lehre.tbl_projektbetreuer ON(lehre.tbl_projektbetreuer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid)
WHERE projektarbeit_id=$termine[$j] AND (tbl_benutzer.aktiv OR tbl_benutzer.aktiv IS NULL)
WHERE projektarbeit_id='".addslashes($termine[$j])."' AND (tbl_benutzer.aktiv OR tbl_benutzer.aktiv IS NULL)
AND (tbl_projektbetreuer.betreuerart_kurzbz='Erstbegutachter' OR tbl_projektbetreuer.betreuerart_kurzbz='Betreuer')";
if(!$betr=$db->db_query($qry_betr))
{
@@ -257,7 +257,7 @@ if(isset($_POST["schick"]) && $error=='')
JOIN public.tbl_kontakt ON(tbl_person.person_id=tbl_kontakt.person_id)
LEFT JOIN public.tbl_benutzer ON(public.tbl_benutzer.person_id=public.tbl_person.person_id)
LEFT JOIN public.tbl_mitarbeiter ON(public.tbl_benutzer.uid=public.tbl_mitarbeiter.mitarbeiter_uid)
WHERE projektarbeit_id=$termine[$j] AND (tbl_benutzer.aktiv OR tbl_benutzer.aktiv IS NULL)
WHERE projektarbeit_id='".addslashes($termine[$j])."' AND (tbl_benutzer.aktiv OR tbl_benutzer.aktiv IS NULL)
AND (tbl_projektbetreuer.betreuerart_kurzbz='Zweitbegutachter') AND kontakttyp='email' AND zustellung LIMIT 1";
if(!$betr=$db->db_query($qry_betr))
{