Subversion Repositories personal-webbase

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 daniel-mar 1
<?php
2
 
3
if (!defined('WBLEGAL')) die('Kann nicht ohne Personal WebBase ausgef&uuml;hrt werden.');
4
 
5
// Datenbankreinigung: IDs sammeln
6
 
7
$faecher = '';
8
$res = db_query("SELECT `id` FROM `".$WBConfig->getMySQLPrefix()."schule_faecher`");
9
while ($row = db_fetch($res))
10
{
11
        $faecher .= "'".$row['id']."', ";
12
}
13
$faecher = substr($faecher, 0, strlen($faecher)-2);
14
 
15
$jahrgaenge = '';
16
$res = db_query("SELECT `id` FROM `".$WBConfig->getMySQLPrefix()."schule_jahrgaenge`");
17
while ($row = db_fetch($res))
18
{
19
        $jahrgaenge .= "'".$row['id']."', ";
20
}
21
$jahrgaenge = substr($jahrgaenge, 0, strlen($jahrgaenge)-2);
22
 
23
// Alle Noten löschen, zu denen kein gültiges Fach/Jahrgang gefunden wurde.
24
 
25
if (($faecher != '') && ($jahrgaenge != ''))
26
{
27
        $add = "WHERE `fach_cnid` NOT IN ($faecher) OR `year_cnid` NOT IN ($jahrgaenge)";
28
}
29
else
30
{
31
        $add = '';
32
}
33
 
34
db_query("DELETE FROM `".$WBConfig->getMySQLPrefix()."schule_noten`$add");
35
 
36
if (db_affected_rows() > 0)
37
{
38
        db_query("OPTIMIZE TABLE `".$WBConfig->getMySQLPrefix()."schule_noten`");
39
}
40
 
41
// Alle Fächer löschen, zu denen kein gültiger Jahrgang gefunden wurde.
42
 
43
if ($jahrgaenge != '')
44
{
45
        $add = "WHERE `year_cnid` NOT IN ($jahrgaenge)";
46
}
47
else
48
{
49
        $add = '';
50
}
51
 
52
db_query("DELETE FROM `".$WBConfig->getMySQLPrefix()."schule_faecher`$add");
53
 
54
if (db_affected_rows() > 0)
55
{
56
        db_query("OPTIMIZE TABLE `".$WBConfig->getMySQLPrefix()."schule_faecher`");
57
}
58
 
59
// Alle Hausaufgaben löschen, zu denen kein gültiges Fach/Jahrgang gefunden wurde.
60
 
61
if (($faecher != '') && ($jahrgaenge != ''))
62
{
63
        $add = "WHERE `fach_cnid` NOT IN ($faecher) OR `year_cnid` NOT IN ($jahrgaenge)";
64
}
65
else
66
{
67
        $add = '';
68
}
69
 
70
db_query("DELETE FROM `".$WBConfig->getMySQLPrefix()."schule_hausaufgaben`$add");
71
 
72
if (db_affected_rows() > 0)
73
{
74
        db_query("OPTIMIZE TABLE `".$WBConfig->getMySQLPrefix()."schule_hausaufgaben`");
75
}
76
 
77
?>