/** Hent inn moduler */ public function __get($module) { switch ($module) { case "db": // hent inn databasemodulen $this->db = $this->db_debug ? new db_wrap_debug() : new db_wrap(); // koble til databasen $this->db->connect(DBHOST, DBUSER, DBPASS, DBNAME); return $this->db; case "page": // hent inn sidemodulen $this->page = new page(); return $this->page; case "date": // hent inn tidsbehandling $this->date = new date(); return $this->date; default: throw new HSException("Ukjent modul: {$module}"); } }
die("Kan kun kjøres lokalt."); } // kontroller mysql-program $ret = shell_exec("mysql --version"); if (empty($ret)) { die("Det ser ikke ut som mysql kommandoen er tilgjengelig på systemet."); } /** Egen exception type */ class HSException extends Exception { } require "../../app/extra/class.db_wrap.php"; // last inn databaseobjekt $db = new db_wrap(); // koble til databasen $db->connect(DBHOST, DBUSER, DBPASS); // laste opp ny database? if (isset($_FILES['sqlfile'])) { $src = $_FILES['sqlfile']['tmp_name']; if (!file_exists($src) || !is_uploaded_file($src)) { die("Filen ble ikke korrekt lastet opp."); } // kontroller at dette er en MySQL dump $fh = fopen($src, "r"); if (!$fh) { die("Filen {$src} kunne ikke bli åpnet."); } $first = fgets($fh, 1024); if (mb_strpos($first, "MySQL dump") === false) { die("Dette ser ikke ut som en 'MySQL dump'-fil"); }