Вход Регистрация
Файл: system/database.php
Строк: 57
<?php
/**
*    Author: Elime;
*    ICQ: 618878;
*    E-mail: elime4@gmail.com;
*/

class mysql
{
    public 
$db_link;
    public 
$debugging true;
    public 
$list_queries = array();
    public 
$count_queries 0;
    public 
$time_queries 0;

    
    
/* Соединение с базой */
    
public function connect()
    {
        
$this->db_link = ((($GLOBALS["___mysqli_ston"] = mysqli_init()) && (mysqli_real_connect($GLOBALS["___mysqli_ston"], DB_HOST,  DB_USER,  DB_PASSNULL3306NULL,  65536))) ? $GLOBALS["___mysqli_ston"] : FALSE) or $this->error('Не возможно подключиться к mysql серверу');
        
mysqli_select_db($GLOBALS["___mysqli_ston"], constant('DB_BASE')) or $this->error('Не возможно выбрать базу данных: '.DB_BASE);
    }

    
    
/* Выполнение запроса к базе */
    
public function query($query)
    {
        
/* Засекаем время выполнения запроса */
        
$start_time microtime(1);
        
        
/* Выполняем запрос */
        
$result mysqli_query$this->db_link$query) or $this->error($query PHP_EOL mysqli_error($this->db_link));
        
        
/* Получаем время по окончанию запроса */
        
$end_time microtime(1);
        
        
/* Высчитываем время на запрос */
        
$query_time $end_time $start_time;
        
        
/* Массив запросов и время выполнения каждого */
        
$this->list_queries[] = array('query' => $query'time' => $query_time);
        
        
/* Общее время выполнения запросов и количество запросов */
        
$this->time_queries += $query_time;
        
$this->count_queries++;
        
        return 
$result;
    }
    
    
    
/* Массив запросов */
    
public function list_queries()
    {
        return 
$this->list_queries;
    }
    
    
    
/* Кодировка БД */
    
public function charset($charset)
    {
        
$this->query("SET NAMES $charset");
    }

    
    
/* Получение результата */
    
public function result($query)
    {
        
$result $this->query($query)->fetch_row();
        return 
$result[0];
    }
    
    
    
/* Последний вставленный id */
    
public function insert_id() 
    {
        return ((
is_null($___mysqli_res mysqli_insert_id($this->db_link))) ? false $___mysqli_res);
    }

    
    
/* Аналог mysql_fetch_assoc() */
    
public function fetch($result)
    {
        return 
mysqli_fetch_assoc($result);
    }
    
    
    
/* Получение строки */
    
public function get_row($query$restype MYSQLI_ASSOC)
    {
        
$result $this->query($query);
        if(
$row mysqli_fetch_array($result,  $restype))
        {
            return 
array_map('stripslashes'$row);
        }
        else
        {
            return 
false;
        }
    }

    
    
/* Аналог mysql_num_rows() */
    
public function num($result)
    {
        return 
mysqli_num_rows($result);
    }

    
    
/* Вывод ошибки и завершение работы */
    
protected function error($error)
    {
        if(
$this->debugging) echo '<pre>'$error .'</pre>';
        exit;
    }
}
?>
Онлайн: 3
Реклама