This commit is contained in:
Christian Paminger
2006-11-27 08:32:02 +00:00
parent 28ad20fc05
commit 69e7513333
7 changed files with 988 additions and 0 deletions
+343
View File
@@ -0,0 +1,343 @@
<?php
/**
* Ueberpruefung der Daten fuer Datenbankintegration FAS->VILESCI
*
* Prueft im FAS ob in der Tabelle lehreinheit die bezeichnung und die Kurzbezeichnung
* innerhalb eines Studiensemesters, Studienganges und Semesters eindeutig ist.
*
* Prueft im FAS ob in der Tabelle lehrveranstaltung die bezeichnung und die Kurzbezeichnung
* innerhalb eines Studiensemesters, Studienganges und Semesters eindeutig ist.
*
* Zusaetzlich wird in der Tabelle Lehrveranstaltung geprueft ob die ECTS Punkte in
* zusammengehoerigen Lehrveranstaltungen gleich sind.
*
* Danach wird eine Mail an die zustaendige Assistentin geschickt.
*/
include("../vilesci/config.inc.php");
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>check_fas_lvbz</title>
<style>
table
{
border:1px solid black;
}
TR.liste
{
background-color: #D3DCE3;
}
TR.liste0
{
background-color: #FFFFFF;
}
TR.liste1
{
background-color: #EEEEEE;
}
</style>
</head>
<body>
<?php
if(!$conn=pg_pconnect(CONN_STRING_FAS))
die("Fehler beim Connecten zur DB");
if(!$conn_calva=pg_pconnect(CONN_STRING))
die("Fehler beim Connecten zur DB");
//Liste der Studiengaenge holen
$qry="Select studiengang_kz, kurzbzlang from tbl_studiengang";
if(!$result=pg_exec($conn_calva,$qry))
die("Fehler beim Auslesen der Studiengaenge");
$studiengaenge=array();
while($row=pg_fetch_object($result))
$studiengaenge[$row->studiengang_kz]=$row->kurzbzlang;
//alle Kurzbezeichnungen trimmen
//Select mit allen eintraegen wo die kurzbezeichnung bzw langbezeichnung nicht eindeutig ist
$qry="UPDATE lehreinheit SET kurzbezeichnung=UPPER(trim(kurzbezeichnung)), bezeichnung=trim(bezeichnung)
WHERE kurzbezeichnung<>UPPER(trim(kurzbezeichnung)) OR bezeichnung<>trim(bezeichnung);
Select distinct on(studiengang.kennzahl,
studiensemester.jahr, studiensemester.art, ausbildungssemester.name,
a.bezeichnung, a.kurzbezeichnung, b.kurzbezeichnung)
a.lehreinheit_pk as pk1,b.lehreinheit_pk as pk2, studiengang.kennzahl as stg,
studiensemester.jahr as jahr, studiensemester.art as art, ausbildungssemester.name as sem,
a.bezeichnung as bez1, b.bezeichnung as bez2, a.kurzbezeichnung as kurzbz1, b.kurzbezeichnung as kurzbz2
from lehreinheit a, lehreinheit b , studiengang, studiensemester, ausbildungssemester
where a.lehreinheit_pk<>b.lehreinheit_pk AND a.studiengang_fk=b.studiengang_fk AND
a.studiensemester_fk=b.studiensemester_fk AND a.ausbildungssemester_fk=b.ausbildungssemester_fk
AND ((trim(a.bezeichnung)=trim(b.bezeichnung) AND a.kurzbezeichnung<>b.kurzbezeichnung) OR
(trim(a.bezeichnung)<>trim(b.bezeichnung) AND a.kurzbezeichnung=b.kurzbezeichnung)) AND
a.studiengang_fk=studiengang.studiengang_pk AND a.studiensemester_fk=studiensemester.studiensemester_pk
AND a.ausbildungssemester_fk=ausbildungssemester.ausbildungssemester_pk order by studiengang.kennzahl";
$arr=array();
if(!$result=pg_exec($conn,$qry))
die("Fehler bei qry".pg_last_error($conn));
while($row=pg_fetch_object($result))
{
if((!array_key_exists($row->pk1.$row->pk2,$arr) || $arr[$row->pk1.$row->pk2]['bez1']!=$row->bez1)
&& (!array_key_exists($row->pk2.$row->pk1,$arr) || $arr[$row->pk2.$row->pk1]['bez1']!=$row->bez1))
{
$arr[$row->pk1.$row->pk2]['id']=$row->pk1." / ".$row->pk2;
$arr[$row->pk1.$row->pk2]['stg']=$row->stg;
$arr[$row->pk1.$row->pk2]['jahr']=$row->jahr;
$arr[$row->pk1.$row->pk2]['art']=$row->art;
$arr[$row->pk1.$row->pk2]['sem']=$row->sem;
$arr[$row->pk1.$row->pk2]['bez1']=$row->bez1;
$arr[$row->pk1.$row->pk2]['bez2']=$row->bez2;
$arr[$row->pk1.$row->pk2]['kurzbz1']=$row->kurzbz1;
$arr[$row->pk1.$row->pk2]['kurzbz2']=$row->kurzbz2;
}
}
echo "anzahl:".count($arr);
echo "<br>";
$i=1;
$laststg='0';
foreach($arr as $elem)
{
if($laststg!=$elem['stg'])
{
if($i!=1)
$mesg[$laststg].= "</table>";
$i=1;
$laststg=$elem['stg'];
$mesg[$elem['stg']].="\n<html><head><style>
table
{
border:1px solid black;
}
TR.liste
{
background-color: #D3DCE3;
}
TR.liste0
{
background-color: #FFFFFF;
}
TR.liste1
{
background-color: #EEEEEE;
}
</style>
</head><body>";
$mesg[$elem['stg']].="Sehr geehrte Assistentin!<br><br>Aufgrund des Projekts Datenbankintegration ist es notwendig die Daten in einen konsitenten Zustand zu bringen.";
$mesg[$elem['stg']].="Bitte beheben Sie die folgenden Probleme:<br><br>";
$mesg[$elem['stg']].="Bei folgenden Eintr&auml;gen gibt es zu einer Lang-Bezeichnungen mehrere Kurzbezeichnungen bzw. umgekehrt!<br>(FAS->Semesterplanung->Lehreinheiten)<br>";
$mesg[$elem['stg']].="<table class='liste'><tr><th>id</th><th>Studiengang</th><th>Studiensemester</th><th>Semester</th><th>Bezeichnung1</th><th>Bezeichnung2</th><th>Kuerzel1</th><th>Kuerzel2</th></tr>";
}
$mesg[$elem['stg']].= "\n";
$mesg[$elem['stg']].= "<tr class='liste".($i%2)."'>";
$mesg[$elem['stg']].= "<td>".$elem['id']."</td>";
$mesg[$elem['stg']].= "<td>".$studiengaenge[$elem['stg']]."</td>";
$mesg[$elem['stg']].= "<td>".($elem['art']==1?'WS':'SS').$elem['jahr']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['sem']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['bez1']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['bez2']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['kurzbz1']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['kurzbz2']."</td>";
$mesg[$elem['stg']].= "</tr>";
$i++;
}
$mesg[$laststg].= "</table>";
// ***** Stammdaten
//Alle bezeichnungen mit unterschiedlichen kurzbezeichnungen bzw umgekehrt aus Tab. lehrveranstaltung heraussuchen
$qry="UPDATE lehrveranstaltung set kurzbezeichnung=UPPER(trim(kurzbezeichnung)), name=trim(name)
WHERE kurzbezeichnung<>UPPER(trim(kurzbezeichnung)) OR name<>trim(name);
SELECT distinct on(lva1.studiengang_fk, lva1.ausbildungssemester_fk, lva1.studiensemester_fk)
lva1.lehrveranstaltung_pk as id1, lva1.fachbereich_fk, studiengang.kennzahl as stg,
ausbildungssemester.name as sem, lva1.name as name1, lva1.kurzbezeichnung as kuerzel1, lva1.art,
studiensemester.art as stsemart, studiensemester.jahr as stsemjahr,
lva2.lehrveranstaltung_pk as id2, lva2.fachbereich_fk, lva2.name as name2, lva2.kurzbezeichnung as kuerzel2, lva2.art
FROM lehrveranstaltung lva1, lehrveranstaltung lva2, studiengang, studiensemester, ausbildungssemester
WHERE lva1.studiensemester_fk=studiensemester.studiensemester_pk AND
lva1.ausbildungssemester_fk=ausbildungssemester_pk AND
studiengang.studiengang_pk=lva1.studiengang_fk AND
lva1.lehrveranstaltung_pk<>lva2.lehrveranstaltung_pk AND
((lva1.name=lva2.name AND lva1.kurzbezeichnung<>lva2.kurzbezeichnung)
OR (lva1.name<>lva2.name AND lva1.kurzbezeichnung=lva2.kurzbezeichnung)) AND
lva1.studiengang_fk=lva2.studiengang_fk AND
lva1.studiensemester_fk=lva2.studiensemester_fk AND
lva1.ausbildungssemester_fk=lva2.ausbildungssemester_fk
ORDER BY lva1.studiengang_fk";
if(!$result=pg_exec($conn,$qry))
die("Fehler beim ueberpruefen der Stammdaten");
$laststg='0';
//Tabelle aufbauen
while($row=pg_fetch_object($result))
{
if($laststg!=$row->stg)
{
if($laststg!='0')
$mesg[$laststg].="</table>";
$laststg=$row->stg;
if(!array_key_exists($row->stg,$mesg))
{
//Header schreibgen falls noch keiner geschrieben wurde
$mesg[$row->stg]="<html><head><style>
table
{
border:1px solid black;
}
TR.liste
{
background-color: #D3DCE3;
}
TR.liste0
{
background-color: #FFFFFF;
}
TR.liste1
{
background-color: #EEEEEE;
}
</style>
</head><body>";
}
$mesg[$row->stg].="<br>Bei folgenden Eintr&auml;gen gibt es zu einer Lang-Bezeichnungen mehrere Kurzbezeichnungen bzw. umgekehrt!<br>(FAS->Stammdaten->Lehrveranstaltung)<br>";
$mesg[$row->stg].="<table class='liste'><tr><th>id</th><th>Studiengang</th><th>Studiensemester</th><th>Semester</th><th>Bezeichnung1</th><th>Bezeichnung2</th><th>Kuerzel1</th><th>Kuerzel2</th></tr>";
}
$mesg[$row->stg].= "<tr class='liste".($i%2)."'>";
$mesg[$row->stg].= "<td>".$row->id1.' / '.$row->id2."</td>";
$mesg[$row->stg].= "<td>".$studiengaenge[$row->stg]."</td>";
$mesg[$row->stg].= "<td>".($row->stsemart==1?'WS':'SS').$row->stsemjahr."</td>";
$mesg[$row->stg].= "<td>".$row->sem."</td>";
$mesg[$row->stg].= "<td>".$row->name1."</td>";
$mesg[$row->stg].= "<td>".$row->name2."</td>";
$mesg[$row->stg].= "<td>".$row->kuerzel1."</td>";
$mesg[$row->stg].= "<td>".$row->kuerzel2."</td>";
$mesg[$row->stg].= "</tr>";
$i++;
}
// ***** ECTS Punkte pruefen
$qry="Select a.lehrveranstaltung_pk as pk1, b.lehrveranstaltung_pk as pk2,
studiengang.kennzahl as stg, ausbildungssemester.name as sem,
a.name as bez, a.ectspunkte as ects1, b.ectspunkte as ects2
from lehrveranstaltung a, lehrveranstaltung b, studiengang, ausbildungssemester
where a.studiengang_fk=b.studiengang_fk and a.ausbildungssemester_fk=b.ausbildungssemester_fk
and a.studiensemester_fk=b.studiensemester_fk and a.ectspunkte<>b.ectspunkte
AND a.lehrveranstaltung_pk<>b.lehrveranstaltung_pk
AND lower(a.kurzbezeichnung)=lower(b.kurzbezeichnung)
AND studiengang.studiengang_pk=a.studiengang_fk
AND a.ausbildungssemester_fk=ausbildungssemester_pk order by studiengang.kennzahl";
$arr=array();
if(!$result=pg_exec($conn,$qry))
die("Fehler bei qry".pg_last_error($conn));
while($row=pg_fetch_object($result))
{
if(!array_key_exists($row->pk1.$row->pk2,$arr) && !array_key_exists($row->pk2.$row->pk1,$arr))
{
$arr[$row->pk1.$row->pk2]['id']=$row->pk1." / ".$row->pk2;
$arr[$row->pk1.$row->pk2]['stg']=$row->stg;
//$arr[$row->pk1.$row->pk2]['jahr']=$row->jahr;
//$arr[$row->pk1.$row->pk2]['art']=$row->art;
$arr[$row->pk1.$row->pk2]['sem']=$row->sem;
$arr[$row->pk1.$row->pk2]['bez']=$row->bez;
$arr[$row->pk1.$row->pk2]['ects1']=$row->ects1;
$arr[$row->pk1.$row->pk2]['ects2']=$row->ects2;
}
}
//echo "<table class='liste'><tr><th>id</th><th>Studiengang</th><th>Semester</th><th>Bezeichnung</th><th>ECTS1</th><th>ECTS2</th></tr>";
$i=1;
$laststg='0';
foreach($arr as $elem)
{
if($laststg!=$elem['stg'])
{
$mesg[$laststg].="</table>";
$i=1;
$laststg=$elem['stg'];
if(!array_key_exists($elem['stg'],$mesg))
{
$mesg[$elem['stg']]="<html><head><style>
table
{
border:1px solid black;
}
TR.liste
{
background-color: #D3DCE3;
}
TR.liste0
{
background-color: #FFFFFF;
}
TR.liste1
{
background-color: #EEEEEE;
}
</style>
</head><body>";
}
$mesg[$elem['stg']].="<br>Es sind gleiche Eintr&auml;ge mit unterschiedlichen ECTS Punkten vorhanden<br><br>";
$mesg[$elem['stg']].="<table class='liste'><tr><th>id</th><th>Studiengang</th><th>Semester</th><th>Bezeichnung</th><th>ECTS1</th><th>ECTS2</th></tr>";
}
$mesg[$elem['stg']].= "<tr class='liste".($i%2)."'>";
$mesg[$elem['stg']].= "<td>".$elem['id']."</td>";
$mesg[$elem['stg']].= "<td>".$studiengaenge[$elem['stg']]."</td>";
//echo "<td>".($elem['art']==1?'WS':'SS').$elem['jahr']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['sem']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['bez']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['ects1']."</td>";
$mesg[$elem['stg']].= "<td>".$elem['ects2']."</td>";
$mesg[$elem['stg']].= "</tr>";
$i++;
}
// ********** Mails verschicken
$mesg[$laststg].= "</table>";
echo $msg;
foreach (array_keys($mesg) as $elem)
{
if($elem!='0')
{
$qry="Select email from tbl_studiengang where studiengang_kz='$elem'";
$result=pg_exec($conn_calva,$qry);
$row=pg_fetch_object($result);
echo "<br>".$studiengaenge[$elem]." goes to $row->email<br><br>";
echo $mesg[$elem];
if($row->email!='')
{
/* To send HTML mail, you can set the Content-type header. */
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
/* additional headers */
$headers .= "From: Systementwicklung - automatisch generiert <systementwicklung@technikum-wien.at>\r\n";
//$headers .= "Bcc: oesi@technikum-wien.at\r\n";
//mail('oesi@technikum-wien.at','Datenbereinigung ('.$studiengaenge[$elem].')',$mesg[$elem],$headers);
mail($row->email,'Datenbereinigung ('.$studiengaenge[$elem].')',$mesg[$elem],$headers);
}
}
}
?>
+447
View File
@@ -0,0 +1,447 @@
<?php
/*
###########################################################################
# htaccess-Generator #
###########################################################################
# #
# Copyright © 2000+2001 by Alexander Mieland (DMA147.ThW.N) #
# Contact: dma147@gamesweb.com / http://www.apboard.de #
# #
###########################################################################
# Dieses Script ist vollkommen frei und kostenlos erhältlich. #
# Dieses Script darf an Dritte weitergegeben werden, Vorraussetzung #
# ist, dass der Code unverändert bleibt und diese Text-Datei #
# !!! WICHTIG !!!.txt mit weitergegeben wird. #
# Dieses Script ist herunterzuladen unter: http://www.apboard.de #
###########################################################################
*/
$version="v.1.6";
function error($text) {
echo"<table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"><tr><td><div align=\"center\"><p><font face=\"Geneva, Arial, Helvetica, san-serif\" size=\"4\" color=\"#FF0000\"><b><font color=\"#FF3300\">ERROR:</font></b></font></p>
<p><b><font face=\"Geneva, Arial, Helvetica, san-serif\" size=\"2\" color=\"#333333\">Das Script meldet folgenden Fehler:<br>&quot;<font size=\"3\" color=\"#FF3300\">".$text."</font>&quot; </font></b></p>
<p><b><font face=\"Geneva, Arial, Helvetica, san-serif\" size=\"2\" color=\"#333333\"><br>[ - <a href=\"./access.php\">Index</a> - <a href=\"javascript:history.go(-1)\">Zur&uuml;ck</a> - ]</font></b></p><br><br><br>
</div></td></tr></table></b></font></form></td><td width=\"3%\">&nbsp;</td></tr><tr><td width=\"4%\">&nbsp;</td><td width=\"93%\"><div align=\"right\"><font face=\"Geneva, Arial, Helvetica, san-serif\" size=\"1\" color=\"#666666\"><br>
htaccess-Generator Copyright &copy; 2000+2001 by <a href=\"mailto:dma147@gamesweb.com\">Alexander Mieland (DMA147)</a></font></div></td><td width=\"3%\">&nbsp;</td></tr></table></td></tr></table></body></html>";
exit;
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html><head><title>htaccess-Generator <?php echo $version; ?></title><style type="text/css">
a:link { color:#0033FF; text-decoration:none; }
a:visited { color:#0033FF; text-decoration:none; }
a:active { color:#FF3300; text-decoration:none; }
a:hover { color:#FF3300; text-decoration:none; }
</style></head><body bgcolor="#666666" text="#333333" link="#0033FF" vlink="#0033CC" alink="#FF3300" topmargin="30"><br><br><br><table width="550" border="1" cellspacing="0" cellpadding="0" align="center" bgcolor="#FFFFFF">
<tr><td><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr bgcolor="#CCCCCC"><td width="2%" height="31">&nbsp;</td><td width="96%" height="31" bgcolor="#CCCCCC">
<div align="center"><font face="Geneva, Arial, Helvetica, san-serif" size="3" color="#666666"><b><font size="4">DMA`s <font color="#FF3300">htaccess</font>-Generator <?php echo $version; ?></font></b></font></div>
</td><td width="2%" height="31">&nbsp;</td></tr><tr><td width="2%" bgcolor="#CCCCCC">&nbsp;</td><td width="96%"> <font face="Geneva, Arial, Helvetica, san-serif" size="1" color="#333333">
<br>Script zum erstellen eines kompletten, passwortgesch&uuml;tzen Bereichs auf dem Server.<br><font color="#FF3300"><b><li>Das Verzeichnis, welches gesch&uuml;tzt werden soll, MUSS chmod 777 haben!
<li>Dieses Script muss IN dem, zu sch&uuml;tzenden Verzeichnis liegen!<br><br><br><br></b></font></font></td><td width="2%" bgcolor="#CCCCCC">&nbsp;</td></tr><tr><td width="2%" bgcolor="#CCCCCC">&nbsp;</td><td width="96%">
<?php
if (!isset($auswahl)):
?>
<br>
<div align="center"> <font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
<font size="3" color="#FF3300">htaccess</font><font size="3">-Men&uuml;</font><br>
<br>
</b></font>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50%">
<div align="right"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b><a href="./access.php?auswahl=neu">Neuen
Admin-Bereich erstellen</a>&nbsp;&nbsp;&nbsp;</b></font></div>
</td>
<td width="50%">
<div align="left"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b>&nbsp;&nbsp;&nbsp;<a href="./access.php?auswahl=change">Einen
Admin-Bereich &auml;ndern</a></b></font></div>
</td>
</tr>
<tr>
<td width="50%">
<div align="right"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b>&nbsp;&nbsp;&nbsp;</b></font></div>
</td>
<td width="50%">
<div align="left"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b>&nbsp;&nbsp;&nbsp;</b></font></div>
</td>
</tr>
<tr>
<td width="50%">
<div align="right"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b><a href="./access.php?auswahl=open">Einen
Admin-Bereich wieder &ouml;ffnen</a>&nbsp;&nbsp;&nbsp;</b></font></div>
</td>
<td width="50%">
<div align="left"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b>&nbsp;&nbsp;&nbsp;<a href="http://www.apboard.de">Zur
Homepage des Generators</a></b></font></div>
</td>
</tr>
<tr>
<td width="50%">
<div align="right"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b>&nbsp;&nbsp;&nbsp;</b></font></div>
</td>
<td width="50%">
<div align="left"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b>&nbsp;&nbsp;&nbsp;</b></font></div>
</td>
</tr>
<tr>
<td width="50%">
<div align="right"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b><a href="mailto:dma147@gamesweb.com?subject=Mail%20aus%20dem%20Generator%20heraus">Dem
Autor eine eMail schicken</a>&nbsp;&nbsp;&nbsp;</b></font></div>
</td>
<td width="50%">
<div align="left"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#333333"><b>&nbsp;&nbsp;&nbsp;<a href="http://www.dmx147.de/download/htaccess.zip">Die
neueste Version downloaden</a></b></font></div>
</td>
</tr>
</table>
<br>
<br>
<br>
<font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
</b> </font> </div>
<?php
elseif ($auswahl == "neu"):
if (!isset($user)):
?>
<br>
<div align="center"> <font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
<font size="4" color="#FF3300">Neuen Bereich anlegen</font></b></font><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666">
<br>
<br>
<br>
<br>
<a href="./access.php?auswahl=neu&user=1">Bereich mit nur einem User anlegen</a><br>
<br>
<a href="./access.php?auswahl=neu&user=2">Bereich mit mehreren Usern anlegen</a><br>
<br>
<br>
<br>
[ - <a href="./access.php">index</a> - ]</font>
<br>
<br>
<br>
</div>
<?php
elseif ($user == "1"):
if (!isset($save)):
?>
<form method="post" action="./access.php" name="send">
<center>
<font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
<div align="center"><br>
Neuen Admin-Bereich erstellen </div>
</b></font>
</center>
<div align="center"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b><br>
<br>
Vergib einen Namen für den Bereich (max. 30 Zeichen):<br>
<input type="text" name="realm" maxsize=30>
<br>
<br>
Gib den Usernamen ein:<br>
<input type="text" name="name">
<br>
<br>
Gib das Passwort zweimal ein:<br>
<input type="password" name="pwd1">
<br>
<input type="password" name="pwd2">
<input type="hidden" name="save" value="yes">
<input type="hidden" name="user" value="1">
<input type="hidden" name="auswahl" value="neu">
<br>
<br>
<input type="submit" name="submit" value="speichern">
</b></font></div>
<font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
</b></font>
</form>
<?php
elseif ($save == "yes"):
if ($name == "" || $name == " " || $pwd1 == "" || $pwd2 == "")
{
error("Da fehlt doch was???!!!");
} else {
if ($pwd1 == $pwd2) {
$passwd = crypt($pwd2);
$inhalt = $name.":".$passwd;
$i=1;
while(!$pwfile) {
if(file_exists("./.htpasswd0$i")) $i++;
else $pwfile=".htpasswd0$i";
}
$wf = fopen ("./".$pwfile, "w+");
if(!fwrite ($wf,$inhalt)) error($pwfile." konnte nicht geschrieben werden! Bitte das Verzeichnis auf 777 chmoden! (Info in wichtig.txt!)");
fclose ($wf);
$path = $SCRIPT_FILENAME;
$path = ereg_replace('/access.php', '', $path);
$htaccessinhalt = "AuthType Basic\nAuthName \"".$realm." - found at: http://www.apboard.de\"\nAuthUserFile ".$path."/".$pwfile."\nrequire valid-user";
$wf = fopen ("./.htaccess", "w+");
if(!fwrite ($wf,$htaccessinhalt)) error(".htaccess konnte nicht geschrieben werden! Bitte das Verzeichnis auf 777 chmoden! (Info in wichtig.txt!)");
fclose ($wf);
echo "<br><br><p><font color=#FF3300>Die .htpasswd wurde mit folgendem Inhalt gespeichert:</font><br>".$inhalt."</p>
<font color=#FF3300>Die .htaccess wurde mit folgendem Inhalt gespeichert:</font><br><pre>".$htaccessinhalt."</pre></p><br>
<hr><br>
Denken Sie daran, dass man versteckte Dateien auf einem Server mit einem FTP-Programm manchmal nicht sieht!<br>
Da die Datei &quot;.htpasswd&quot; eine versteckte Datei ist (in Unix ist alles, mit Punkt vorne, versteckt),
Kann es sein, dass sie sie nicht sehen. Sie können sie sich aber dennoch runterladen, indem sie in die FTP-Console
Ihres FTP-Clients folgendes eingeben:&nbsp;&nbsp;&nbsp;get .htpasswd<br><br></font>";
} else {
echo "<br><br><br>";
error("Die beiden Passwort-Eingaben unterscheiden sich voneinander!");
}
}
endif;
?>
<font face="Geneva, Arial, Helvetica, san-serif" size="1" color="#666666"><center><br>
<br>
[ - <a href="./access.php">Index</a> - ]<br>
</center>
</font><br>
<?php
elseif ($user == "2"):
if (!isset($save)):
?>
<form method="post" action="./access.php" name="send">
<center>
<font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
<div align="center"><br>
Neuen Admin-Bereich erstellen </div>
</b></font>
</center>
<div align="center"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b><br>
<br>
Vergib einen Namen für den Bereich (max. 30 Zeichen):<br>
<input type="text" name="realm" maxsize=30>
<br>
<br>
Gib den 1. Usernamen ein:<br>
<input type="text" name="name">
<br>
<br>
Gib das 1. Passwort zweimal ein:<br>
<input type="password" name="pwd1">
<br>
<input type="password" name="pwd2">
<input type="hidden" name="save" value="no">
<input type="hidden" name="user" value="2">
<input type="hidden" name="auswahl" value="neu">
<br>
<br>
<input type="submit" name="submit" value="speichern">
</b></font></div>
<font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
</b></font>
</form>
<?php
elseif ($save == "no"):
if ($submit == "speichern" || $submit == "weitere User"):
if ($name == "" || $name == " " || $pwd1 == "" || $pwd2 == "")
{
error("Da fehlt doch was???!!!");
} else {
if ($pwd1 == $pwd2) {
$passwd = crypt($pwd2);
$inhalt1 .= $name.":".$passwd."\n";
?>
<form method="post" action="./access.php" name="send">
<center>
<font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
<div align="center"><br>
Weitere User</div>
</b></font>
</center>
<div align="center"><font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b><br>
<br>
Gib den nächsten Usernamen ein:<br>
<input type="text" name="name">
<br>
<br>
Gib das nächste Passwort zweimal ein:<br>
<input type="password" name="pwd1">
<br>
<input type="password" name="pwd2">
<input type="hidden" name="save" value="no">
<input type="hidden" name="user" value="2">
<input type="hidden" name="auswahl" value="neu">
<input type="hidden" name="inhalt1" value="<?php echo $inhalt1; ?>">
<input type="hidden" name="realm" value="<?php echo $realm; ?>">
<br>
<br>
<input type="submit" name="submit" value="weitere User">&nbsp;&nbsp;
<input type="submit" name="submit" value="endgültig speichern">
</b></font></div>
<font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
</b></font>
</form>
<?php
} else {
echo "<br><br><br>";
error("Die beiden Passwort-Eingaben unterscheiden sich voneinander!");
}
}
elseif ($submit == "endgültig speichern"):
if ($name == "" || $name == " " || $pwd1 == "" || $pwd2 == "")
{
error("Da fehlt doch was???!!!");
} else {
if ($pwd1 == $pwd2) {
$passwd = crypt($pwd2);
$inhalt1 .= $name.":".$passwd."\n";
$i=1;
while(!$pwfile) {
if(file_exists("./.htpasswd0$i")) $i++;
else $pwfile=".htpasswd0$i";
}
$wf = fopen ("./".$pwfile, "w+");
if(!fwrite ($wf,$inhalt1)) error($pwfile." konnte nicht geschrieben werden! Bitte das Verzeichnis auf 777 chmoden! (Info in wichtig.txt!)");
fclose ($wf);
$path = $SCRIPT_FILENAME;
$path = ereg_replace('/access.php', '', $path);
$htaccessinhalt = "AuthType Basic\nAuthName \"".$realm." - found at: http://www.apboard.de\"\nAuthUserFile ".$path."/".$pwfile."\nrequire valid-user";
$wf = fopen ("./.htaccess", "w+");
if(!fwrite ($wf,$htaccessinhalt)) error(".htaccess konnte nicht geschrieben werden! Bitte das Verzeichnis auf 777 chmoden! (Info in wichtig.txt!)");
fclose ($wf);
$inhalt2 = str_replace("\n", "<br>", $inhalt1);
echo "<br><br><p><font color=#FF3300>Die .htpasswd wurde mit folgendem Inhalt gespeichert:</font><br>".$inhalt2."</p>
<font color=#FF3300>Die .htaccess wurde mit folgendem Inhalt gespeichert:</font><br><pre>".$htaccessinhalt."</pre></p><br>
<hr><br>
Denken Sie daran, dass man versteckte Dateien auf einem Server mit einem FTP-Programm manchmal nicht sieht!<br>
Da die Datei &quot;.htpasswd&quot; eine versteckte Datei ist (in Unix ist alles, mit Punkt vorne, versteckt),
Kann es sein, dass sie sie nicht sehen. Sie können sie sich aber dennoch runterladen, indem sie in die FTP-Console
Ihres FTP-Clients folgendes eingeben:&nbsp;&nbsp;&nbsp;get .htpasswd<br><br></font>";
} else {
echo "<br><br><br>";
error("Die beiden Passwort-Eingaben unterscheiden sich voneinander!");
}
}
endif;
endif;
?>
<font face="Geneva, Arial, Helvetica, san-serif" size="1" color="#666666"><center><br>
<br>
[ - <a href="./access.php">Index</a> - ]<br>
</center>
</font><br>
<?php
endif;
elseif ($auswahl == "change"):
?>
<br>
<div align="center"> <font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
<font size="3">Admin-Bereich ändern</font><br>
<font size="2" color="#333333"><br>
<font color=#ff0000><b>VORSICHT!</b><br>
Dies sollten nur Leute machen, die auch wirklich wissen, was sie tun!<br><br></font>
<br>
<?php
if (!isset($pwdatei)):
?>
<form method=post action=access.php>
Folgende Datei ändern:<br>
<?php
echo "<select name=pwdatei>";
$handle=opendir('.');
while ($file = readdir ($handle)) {
if ($file == ".htaccess" || eregi(".htpasswd", $file)) {
echo "<option>".$file."</option>";
}
}
closedir($handle);
echo "</select>";
?>
<br><br>
<input type="hidden" name="auswahl" value="change">
<input type="submit" name="submit" value="ändern">&nbsp;&nbsp;&nbsp;
<input type="submit" name="submit" value="löschen">
</form>
<?php
elseif (isset($pwdatei)):
if ($submit == "ändern"):
if (!isset($save)):
?>
<form method=post action=access.php>
Folgende Datei ändern:<br>
<?php
echo $pwdatei."<br>";
$fp = fopen ("./".$pwdatei, "r");
$inhalt = fread ($fp, filesize("./".$pwdatei));
echo "<TEXTAREA NAME=\"inhalt\" cols=\"60\" rows=\"14\">".$inhalt."</TEXTAREA>";
fclose ($fp);
?>
<br><br>
<input type="hidden" name="pwdatei" value="<?php echo $pwdatei; ?>">
<input type="hidden" name="save" value="1">
<input type="hidden" name="auswahl" value="change">
<input type="submit" name="submit" value="Datei speichern">
</form>
<?php
elseif ($save == "1"):
$fp = fopen ("./".$pwdatei, "w+");
if (!fwrite ($fp, $inhalt)) {
error ("Datei konnte nicht geschrieben werden!");
} else {
echo"<b>Datei erfolgreich gespeichert!</b><br>[ - <a href=access.php>Index</a> - ]<br>";
}
fclose ($fp);
endif;
elseif ($submit == "löschen"):
if (!isset($del)):
echo "Die Datei ".$pwdatei." wirklich löschen?<br><br>";
echo "[ - <a href=\"./access.php?auswahl=change&pwdatei=".$pwdatei."&submit=löschen&del=JA\">JA</a> - <a href=\"./access.php\">NEIN!</a> - ]";
elseif ($del == "JA"):
if(file_exists("./".$pwdatei)) {
if (!unlink("./".$pwdatei)) {
error($pwdatei." konnte nicht gelöscht werden! Bitte manuell, per FTP löschen.");
} else {
echo "<br>Datei ".$pwdatei." wurde erfolgreich gelöscht!<br>[<a href=access.php>Index</a>]<br><br>";
}
} else {
error("Diese Datei ist nicht vorhanden!!??");
}
endif;
endif;
endif;
?>
<br><br>
</font></b> </font> <font face="Geneva, Arial, Helvetica, san-serif" size="1" color="#666666"><br>
[ - <a href="javascript:history.go(-1)">zur&uuml;ck</a> - ]<br>
<br>
<br>
<br>
<b> </b> </font> </div>
<?php
elseif ($auswahl == "open"):
?>
<br>
<div align="center"> <font face="Geneva, Arial, Helvetica, san-serif" size="2" color="#666666"><b>
<font size="3">Admin-Bereich wieder öffnen</font><br>
<font size="2" color="#333333"><br>
<?php
if (!isset($del)):
echo "Den geschützen Bereich wirklich wieder für alle freigeben?<br>(Datei .htaccess wirklich löschen?)<br><br>";
echo "[ - <a href=\"./access.php?auswahl=open&del=JA\">JA</a> - <a href=\"./access.php\">NEIN!</a> - ]";
elseif ($del == "JA"):
if(file_exists("./.htaccess")) {
if (!unlink("./.htaccess")) {
error(".htaccess konnte nicht gelöscht werden! Bitte manuell, per FTP löschen.");
} else {
echo "<br>Datei .htaccess wurde erfolgreich gelöscht!<br>[<a href=access.php>Index</a>]<br><br>";
}
} else {
error("Keine .htaccess - Datei zum löschen vorhanden!!??");
}
endif;
?>
<br>
</font></b> </font> <font face="Geneva, Arial, Helvetica, san-serif" size="1" color="#666666"><br>
[ - <a href="javascript:history.go(-1)">zur&uuml;ck</a> - ]<br>
<br>
<br>
<br>
<b> </b> </font> </div>
<?php
endif;
?>
</td><td width="2%" bgcolor="#CCCCCC">&nbsp;</td></tr><tr bgcolor="#CCCCCC"><td width="2%">&nbsp;</td><td width="96%"><div align="right"><font face="Geneva, Arial, Helvetica, san-serif" size="1" color="#666666"><br>
<font color="#FF3300">htaccess</font>-Generator Copyright &copy; 2000+2001 by <a href="mailto:dma147@gamesweb.com">Alexander Mieland (DMA147)</a></font></div></td><td width="2%">&nbsp;</td></tr></table></td></tr></table></body></html>
+38
View File
@@ -0,0 +1,38 @@
<HTML>
<HEAD>
<TITLE>VileSci-Admin</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<LINK rel="stylesheet" href="../skin/vilesci.css" type="text/css">
</HEAD>
<BODY class="background_main">
<H2>VileSci Administration</H2>
<H3>Tools</H3>
<UL>
<LI><A href="phpPgAdmin/index.php" class="linkblue" target="_blank">phpPgAdmin</A></LI>
<LI><A href="phpMyAdmin/index.php" class="linkblue" target="_blank">phpMyAdmin</A></LI>
<LI><A href="test/index.html" class="linkblue">Server-Tests</A></LI>
<LI><A href="reihungstest/index.html" class="linkblue">ReihungsTest</A></LI>
<LI><A href="htaccess/access.php" class="linkblue">.htaccess-Generator</A></LI>
<LI><A href="VI-Kurzreferenz.html" class="linkblue">VI-Kurzreferenz</A></LI>
</UL>
<HR>
<H3>Admin</H3>
<UL>
<LI><A href="stdplan_lva_del.php" class="linkblue">geloeschte Lehrveranstaltungen</A></LI>
</UL>
<HR>
<H3>Synchronisation</H3>
<UL>
<LI><A href="sync/sync_fas_lva.php" class="linkblue">Lehrveranstaltungen vom FAS</A></LI>
</UL>
<UL>
<LI><A href="sync/sync_stpldev_stpl.php" class="linkblue">StundenplanDEV -> Stundenplan</A><BR>
<A href="sync/sync_stpldev_stpl.php?sendmail=false" class="linkblue">Ohne Mails</A>
</LI>
</UL>
<UL>
<LI><A href="sync/sync_ects_lvinfo.php" class="linkblue">LV INFO - ECTS</A></LI>
</UL>
</BODY>
</HTML>
+50
View File
@@ -0,0 +1,50 @@
<html>
<head>
<title>Abgleich der Lehrfaecher</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<?php
include('../vilesci/config.inc.php');
$conn=pg_connect(CONN_STRING);
$sql_query='SELECT tbl_stundenplan.*, tbl_lehrfach.lehrform_kurzbz, tbl_lehrfach.kurzbz AS lehrfach, tbl_lehrfach.bezeichnung, tbl_lehrfach.farbe
FROM tbl_stundenplan, tbl_lehrfach WHERE tbl_stundenplan.lehrfach_nr=tbl_lehrfach.lehrfach_nr
AND (tbl_stundenplan.studiengang_kz!=tbl_lehrfach.studiengang_kz
OR tbl_stundenplan.semester!=tbl_lehrfach.semester)'; //LIMIT 10000
//echo $sql_query."<br>";
$result=pg_query($conn, $sql_query);
$num_rows=pg_numrows($result);
for ($i=0;$i<$num_rows;$i++)
{
$row=pg_fetch_object($result,$i);
$sql_query="SELECT lehrfach_nr FROM tbl_lehrfach WHERE studiengang_kz=$row->studiengang_kz
AND semester=$row->semester AND kurzbz='$row->lehrfach' AND lehrform_kurzbz='$row->lehrform_kurzbz'";
//echo $sql_query."<br>";
if (!$res=pg_exec($conn, $sql_query))
echo pg_last_error($conn).'<br>';
else
if (pg_numrows($res)>=1)
{
$lehrfach_nr=pg_fetch_object($res);
$lehrfach_nr=$lehrfach_nr->lehrfach_nr;
$sql_query="update tbl_stundenplan set lehrfach_nr=$lehrfach_nr WHERE stundenplan_id=$row->stundenplan_id";
//echo $sql_query."<br>";
if (!$ergebniss=pg_query($conn, $sql_query))
echo pg_last_error($conn).'<br>';
}
else
{
$sql_query="INSERT INTO tbl_lehrfach (studiengang_kz,semester,kurzbz,lehrform_kurzbz,bezeichnung,fachbereich_id,farbe) VALUES ($row->studiengang_kz,$row->semester,'$row->lehrfach','$row->lehrform_kurzbz','$row->bezeichnung',0,'$row->farbe');";
echo $sql_query.'<BR>';
if (!$ergebniss=pg_query($conn, $sql_query))
echo pg_last_error($conn).'<br>';
}
}
echo $num_rows.' Datensaetze abgeglichen! Fertig<br>';
?>
Datenabgleich abgeschlossen!
</body>
</html>
+79
View File
@@ -0,0 +1,79 @@
<?php
/*
* Created on 16.11.2005
*
*/
header("Cache-Control: no-cache");
header("Cache-Control: post-check=0, pre-check=0",false);
header("Expires Mon, 26 Jul 1997 05:00:00 GMT");
header("Pragma: no-cache");
// content type setzen
header("Content-type: application/vnd.mozilla.xul+xml");
// xml
echo '<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>';
// DAO
include('../vilesci/config.inc.php');
if (!$conn = @pg_pconnect(CONN_STRING))
$error_msg='Es konnte keine Verbindung zum Server aufgebaut werden!';
// Orte holen
$sql_query="Select tbl_mailgrp.mailgrp_kurzbz,tbl_mailgrp.studiengang_kz,tbl_mailgrp.beschreibung,tbl_mailgrp.sichtbar,tbl_mailgrp.generiert,tbl_mailgrp.aktiv, tbl_person.vornamen, tbl_person.nachname, (tbl_person.uid || '@technikum-wien.at') as email from tbl_mailgrp, tbl_personmailgrp, tbl_person where tbl_mailgrp.mailgrp_kurzbz=tbl_personmailgrp.mailgrp_kurzbz AND tbl_personmailgrp.uid=tbl_person.uid ORDER by mailgrp_kurzbz, nachname,vornamen";
if(!$result=pg_query($conn, $sql_query))
$error_msg.=pg_errormessage($conn);
else
$num_rows=@pg_numrows($result);
$rdf_url='http://www.technikum-wien.at/vilesci/mailgrp';
?>
<RDF:RDF
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:GRP="<?php echo $rdf_url; ?>/rdf#"
>
<?php
$descr='';
$sequenz='';
for ($i=0;$i<$num_rows;$i++)
{
$grpLAST=($i>0?pg_fetch_object($result,$i-1):null);
$grp=pg_fetch_object($result,$i);
$grpNEXT=(($i<$num_rows-1)?pg_fetch_object($result,$i+1):null);
$currentgrp=$grp->mailgrp_kurzbz;
$lastgrp=$grpLAST->mailgrp_kurzbz;
$nextGRP=$grpNEXT->mailgrp_kurzbz;
if ($lastgrp!=$currentgrp || $i==0)
$descr.='<RDF:Description RDF:about="'.$rdf_url.'/'.$grp->mailgrp_kurzbz.'" >
<GRP:mailgrp>'.$grp->mailgrp_kurzbz.'</GRP:mailgrp>
<GRP:vorname></GRP:vorname>
<GRP:nachname></GRP:nachname>
</RDF:Description>'."\n";
$descr.=' <RDF:Description RDF:about="'.$rdf_url.'/'.$grp->mailgrp_kurzbz.'/'.$grp->email.'" >
<GRP:mailgrp>'.$grp->email.'</GRP:mailgrp>
<GRP:vorname>'.$grp->vornamen.'</GRP:vorname>
<GRP:nachname>'.$grp->nachname.'</GRP:nachname>
</RDF:Description>'."\n";
if ($lastgrp!=$currentgrp)
$sequenz.='<RDF:li RDF:resource="'.$rdf_url.'/'.$grp->mailgrp_kurzbz.'" />
<RDF:li>
<RDF:Seq RDF:about="'.$rdf_url.'/'.$grp->mailgrp_kurzbz.'" >'."\n";
if ($nextGRP!=$currentgrp || $i==$num_rows-1)
$sequenz.='<RDF:li RDF:resource="'.$rdf_url.'/'.$grp->mailgrp_kurzbz.'/'.$grp->email.'" />
</RDF:Seq>
</RDF:li>'."\n";
elseif ($lastgrp==$currentgrp || $nextGRP==$currentgrp || $num_rows==1)
$sequenz.='<RDF:li RDF:resource="'.$rdf_url.'/'.$grp->mailgrp_kurzbz.'/'.$grp->email.'" />'."\n";
}
$sequenz='<RDF:Seq about="'.$rdf_url.'/alle-grp">'."\n".$sequenz.'
</RDF:Seq>';
echo $descr;
echo $sequenz;
?>
</RDF:RDF>
+21
View File
@@ -0,0 +1,21 @@
<HTML>
<HEAD>
<TITLE>Mail Test</TITLE>
<META http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</HEAD>
<BODY bgcolor="#FFFFFF" text="#000000">
<P>Test-Seite zum verschicken von Mails.</P>
<FORM name="form1" method="post" action="mailtest.php">
Adresse:
<INPUT type="text" name="adress">
<BR>
Subject:
<INPUT type="text" name="subject">
<BR>
<INPUT type="submit" name="Send" value="Abschicken">
</FORM>
<P>&nbsp; </P>
</BODY>
</HTML>
+10
View File
@@ -0,0 +1,10 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1"></HEAD>
<BODY>
<?php
//for ($i=0;$i<100;$i++)
echo mail($adress,$subject,"test");
?>
</BODY>
</HTML>