-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathipfilter.php
71 lines (64 loc) · 2.2 KB
/
ipfilter.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<?php
// Sicherheit - nur konkret definierte IP-Adressen dürfen Zugriff haben
function Sicherheit()
{
global $sDatabase;
$aParam['_error_'] = '';
$aParam['_display_'] = 'none';
$hDatabase = OpenDB($sDatabase);
// will jemand Eintrlen ?
if (isset($_POST['loeschen'])) {
if (isset($_POST['eintraege'])) {
foreach ($_POST['eintraege'] as $iSelected) {
// im HTML Code wird als "name" für <select> ein Array angegeben. Unter diesem Namen findet man bei $_POST das Array(!)
if ((int) $iSelected > 1) {
// 127.0.0.1 darf nicht gelöscht werden
SQLQuery($hDatabase, "DELETE FROM security WHERE nr='" . (int) $iSelected . "'");
} else {
$aParam['_error_'] = "127.0.0.1 darf nicht gelöscht werden !";
$aParam['_display_'] = 'block';
}
}
} else {
$aParam['_error_'] = "Keine Auswahl getroffen !";
$aParam['_display_'] = 'block';
}
}
// will jemand IPAdresse hinzufügen ?
if (isset($_POST['hinzufuegen'])) {
$sIpadr = $_POST['ipadresse'];
if ($sIpadr != "") {
if (CheckIP($sIpadr)) {
SQLQuery($hDatabase, "INSERT INTO security (ipadresse) VALUES ('" . ip2long($sIpadr) . "')");
} else {
$aParam['_error_'] = "IP-Adresse entspricht nicht der Notation !";
$aParam['_display_'] = 'block';
}
} else {
$aParam['_error_'] = "Bitte Adresse angeben !";
$aParam['_display_'] = 'block';
}
}
// liefert ein Array - jeder Array Eintrag ist wieder ein Array/Hashtable mit den Zeileneinträgen
$aLogs = SQLArrayQuery($hDatabase, "SELECT * FROM security");
CloseDB($hDatabase);
if (!sizeof($aLogs) == 0) {
// gibt es haupt Eintr?
for ($t = 0; $t < sizeof($aLogs); $t++) {
$aNr[$t] = $aLogs[$t]['nr'];
$aEintrag[$t] = NormIP(long2ip($aLogs[$t]['ipadresse']));
}
$aParam['_nr_'] = $aNr;
$aParam['_ipadr_'] = $aEintrag;
if (sizeof($aNr) > 30) {
$aParam['_max_'] = 30;
} else {
$aParam['_max_'] = sizeof($aNr);
}
} else {
$aParam['_nr_'] = null;
$aParam['_eintrag_'] = 'Keine Einträge vorhanden !';
$aParam['_max_'] = 1;
}
ShowGui('ip.html', $aParam);
}