Beispiel #1
0
 /** Utfør spørring */
 public function query($query, $critical = true, $debug = false)
 {
     // hent data
     $result = parent::query($query, $critical, $debug);
     $info = mysql_info($this->link);
     // tid siden forrige spørring
     if ($this->lastquery) {
         $time = $this->time_last_begin - $this->lastquery;
     } else {
         $time = 0;
     }
     // lagre debug
     $this->queries_text[] = array("script_time____" => (microtime(true) - SCRIPT_START) * 1000, "time_last_query" => round($time, 6) * 1000, "query_time_____" => round($this->time_last, 6) * 1000, "query_info_____" => $info, "query__________" => $query);
     $this->lastquery = microtime(true);
     // send svaret tilbake
     return $result;
 }
Beispiel #2
0
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");
    }
    // drop databasen
    $db->query("DROP DATABASE IF EXISTS " . DBNAME);
    // opprett ny database
    $db->query("CREATE DATABASE " . DBNAME . " CHARSET=utf8 COLLATE=utf8_unicode_ci");
    // velg den nye databasen
    $db->set_database(DBNAME);
    // importer fil
    exec("mysql --user="******" --pass="******" " . escapeshellarg(DBNAME) . " < " . escapeshellarg($src));
    die('Filen ' . $src . ' ble importert. <a href="replace_db">Tilbake</a> <a href="login">Logg inn</a>');
}
echo '
<h1>Ersatt database</h1>
<p><a href="./">Tilbake</a></p>
<form action="" method="post" enctype="multipart/form-data">
	<p><b>Advarsel:</b> Dette vil fjerne alt i databasen med navn <b>' . htmlspecialchars(DBNAME) . '</b>.</p>
	<p><b>Velg MySQL-dump fil</b></p>
	<p><input type="file" name="sqlfile" /></p>