a semi-functional bit of code... lots of todos and error checking
[PHPIPManager.git] / lib / db.php
1 <?php
2
3 // i really dont know why i do another obfuscation layer for db's with adodb.
4 class db {
5         function init() {
6
7                 $sql = 'CREATE TABLE sqlite_sequence(name,seq);';
8                 $this->dbobject->query($sql);
9                 
10                 $sql = 'CREATE TABLE "hosts" ("ho_id" INTEGER PRIMARY KEY AUTOINCREMENT,"ho_sn_id" INTEGER,"ho_ip" TEXT,"ho_name" TEXT,"ho_desc" TEXT);';
11                 $this->dbobject->query($sql);
12                 
13                 $sql = 'CREATE TABLE subnet ("sn_id" INTEGER PRIMARY KEY AUTOINCREMENT,"snid_id" INTEGER,"sn_ip" TEXT,"sn_mask" TEXT,"sn_name" TEXT, "sn_desc" TEXT);';
14                 $this->dbobject->query($sql);
15                 
16                 $sql = 'CREATE TABLE supernet ("sn_id" INTEGER PRIMARY KEY AUTOINCREMENT,"sn_name" TEXT,"sn_ip" TEXT,"sn_mask" TEXT,"sn_desc" TEXT);';
17                 $this->dbobject->query($sql);
18         }
19         
20         function connect() {
21                 global $DB_URI;
22                 
23                 try {
24                         $this->dbobject = new PDO("$DB_URI");
25                 } catch(PDOException $exep) {
26                         error_log("execpt on db open");
27                 }
28                 
29                 if(!$this->dbobject->query("select * from hosts")) {
30                         error_log("db open for init");
31                         $this->init();
32                 }
33                 
34         }
35
36         public $dbobject = "";
37         
38         function dump() {
39                 $sql = "select * from supernet";
40                 $res = $this->dbobject->query($sql);
41                 
42                 foreach($res as $row) {
43                         echo "sn:".$row["sn_id"].":".$row["sn_name"].":".$row["sn_ip"].":".$row["sn_mask"].":".$row["sn_desc"]."\n";
44                 }
45                 $sql = "select * from subnet";
46                 $res = $this->dbobject->query($sql);
47                 
48                 foreach($res as $row) {
49                         echo "sbn:".$row["sn_id"].":".$row["snid_id"].":".$row["sn_name"].":".$row["sn_ip"].":".$row["sn_mask"].":".$row["sn_desc"]."\n";
50                 }
51                 $sql = "select * from hosts";
52                 $res = $this->dbobject->query($sql);
53                 
54                 foreach($res as $row) {
55                         echo "hst:".$row["ho_id"].":".$row["ho_sn_id"].":".$row["ho_ip"].":".$row["ho_name"].":".$row["ho_desc"]."\n";
56                 }
57         }
58         
59         function restore($restorefile) {
60                 
61         }
62 }
63
64
65
66 $db = new db();
67 global $db;
68
69 ?>