Rev 9 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 9 | Rev 14 | ||
---|---|---|---|
1 | <?php |
1 | <?php |
2 | 2 | ||
3 | if (!defined('IBLEGAL')) die('Kann nicht ohne Personal WebBase ausgeführt werden.'); |
3 | if (!defined('WBLEGAL')) die('Kann nicht ohne Personal WebBase ausgeführt werden.'); |
4 | 4 | ||
5 | // Datenbankreinigung: IDs sammeln |
5 | // Datenbankreinigung: IDs sammeln |
6 | $faecher = ''; |
6 | $faecher = ''; |
7 | $res = db_query("SELECT `id` FROM `".$mysql_zugangsdaten['praefix']."schule_faecher`"); |
7 | $res = db_query("SELECT `id` FROM `".$mysql_zugangsdaten['praefix']."schule_faecher`"); |
8 | while ($row = db_fetch($res)) |
8 | while ($row = db_fetch($res)) |
9 | $faecher .= "'".$row['id']."', "; |
9 | $faecher .= "'".$row['id']."', "; |
10 | $faecher = substr($faecher, 0, strlen($faecher)-2); |
10 | $faecher = substr($faecher, 0, strlen($faecher)-2); |
11 | 11 | ||
12 | $jahrgaenge = ''; |
12 | $jahrgaenge = ''; |
13 | $res = db_query("SELECT `id` FROM `".$mysql_zugangsdaten['praefix']."schule_jahrgaenge`"); |
13 | $res = db_query("SELECT `id` FROM `".$mysql_zugangsdaten['praefix']."schule_jahrgaenge`"); |
14 | while ($row = db_fetch($res)) |
14 | while ($row = db_fetch($res)) |
15 | $jahrgaenge .= "'".$row['id']."', "; |
15 | $jahrgaenge .= "'".$row['id']."', "; |
16 | $jahrgaenge = substr($jahrgaenge, 0, strlen($jahrgaenge)-2); |
16 | $jahrgaenge = substr($jahrgaenge, 0, strlen($jahrgaenge)-2); |
17 | 17 | ||
18 | // Alle Noten löschen, zu denen kein gültiges Fach/Jahrgang gefunden wurde. |
18 | // Alle Noten löschen, zu denen kein gültiges Fach/Jahrgang gefunden wurde. |
19 | if (($faecher != '') && ($jahrgaenge != '')) |
19 | if (($faecher != '') && ($jahrgaenge != '')) |
20 | { |
20 | { |
21 | db_query("DELETE FROM `".$mysql_zugangsdaten['praefix']."schule_noten` WHERE `fach` NOT IN ($faecher) AND `jahrgang` NOT IN ($jahrgaenge)"); |
21 | db_query("DELETE FROM `".$mysql_zugangsdaten['praefix']."schule_noten` WHERE `fach` NOT IN ($faecher) AND `jahrgang` NOT IN ($jahrgaenge)"); |
22 | if (db_affected_rows() > 0) |
22 | if (db_affected_rows() > 0) |
23 | db_query("OPTIMIZE TABLE `".$mysql_zugangsdaten['praefix']."schule_noten`"); |
23 | db_query("OPTIMIZE TABLE `".$mysql_zugangsdaten['praefix']."schule_noten`"); |
24 | } |
24 | } |
25 | 25 | ||
26 | // Alle Fächer löschen, zu denen kein gültiger Jahrgang gefunden wurde. |
26 | // Alle Fächer löschen, zu denen kein gültiger Jahrgang gefunden wurde. |
27 | if ($jahrgaenge != '') |
27 | if ($jahrgaenge != '') |
28 | { |
28 | { |
29 | db_query("DELETE FROM `".$mysql_zugangsdaten['praefix']."schule_faecher` WHERE `jahrgang` NOT IN ($jahrgaenge)"); |
29 | db_query("DELETE FROM `".$mysql_zugangsdaten['praefix']."schule_faecher` WHERE `jahrgang` NOT IN ($jahrgaenge)"); |
30 | if (db_affected_rows() > 0) |
30 | if (db_affected_rows() > 0) |
31 | db_query("OPTIMIZE TABLE `".$mysql_zugangsdaten['praefix']."schule_faecher`"); |
31 | db_query("OPTIMIZE TABLE `".$mysql_zugangsdaten['praefix']."schule_faecher`"); |
32 | } |
32 | } |
33 | 33 | ||
34 | // Alle Hausaufgaben löschen, zu denen kein gültiger Jahrgang gefunden wurde. |
34 | // Alle Hausaufgaben löschen, zu denen kein gültiger Jahrgang gefunden wurde. |
35 | if ($jahrgaenge != '') |
35 | if ($jahrgaenge != '') |
36 | { |
36 | { |
37 | db_query("DELETE FROM `".$mysql_zugangsdaten['praefix']."schule_hausaufgaben` WHERE `jahrgang` NOT IN ($jahrgaenge)"); |
37 | db_query("DELETE FROM `".$mysql_zugangsdaten['praefix']."schule_hausaufgaben` WHERE `jahrgang` NOT IN ($jahrgaenge)"); |
38 | if (db_affected_rows() > 0) |
38 | if (db_affected_rows() > 0) |
39 | db_query("OPTIMIZE TABLE `".$mysql_zugangsdaten['praefix']."schule_hausaufgaben`"); |
39 | db_query("OPTIMIZE TABLE `".$mysql_zugangsdaten['praefix']."schule_hausaufgaben`"); |
40 | } |
40 | } |
41 | 41 | ||
42 | ?> |
42 | ?> |
43 | 43 |