[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Соединение с БД в классе
savelikan
Привет всем) Решил к Вам обратится за помощью)
Вот пишу клас для работы с БД.
class mysql {
private $connection;
private $queries = 0;
public $query_time = 0;
public $query_count = 0;
public $query_text = '';

public function __construct () {
GLOBAL $CONFIG;
$connection = mysql_connect($CONFIG['sql_host'], $CONFIG['sql_user'], $CONFIG['sql_pass']) or die ('Не можу приєднатися до серверу MySQL');
mysql_select_db($CONFIG['sql_base'], $connection);
$this->connection = $connection;
mysql_query ("SET NAMES utf8");
}

public function query ($query) {
get_execution_time();
if ($result = mysql_query($query, $this->connection)) {
$this->queries += 1;
} else {
die (mysql_error().' '. __LINE__ .' '. __FILE__);
}
$query_time = get_execution_time();
$this->query_time += $query_time;
$this->query_count++;
$this->query_text .= '<DIV STYLE="border-bottom:1px dashed #B5B5B5;">'.$query.'</DIV>';
return $result;
}
}

естественно, запускаю в шапке
$mysql = new mysql();

Но вот в целях оптимизации хочу сделать так, чтоб он соеденялся в БД только тогда, когда на странице есть запросы к БД.
Вот, что тестировал:
	public function connectbd () {
GLOBAL $CONFIG;
$connection = mysql_connect($CONFIG['sql_host'], $CONFIG['sql_user'], $CONFIG['sql_pass']) or die ('Не можу приєднатися до серверу MySQL');
mysql_select_db($CONFIG['sql_base'], $connection);
$this->connection = $connection;
mysql_query ("SET NAMES utf8");
}

public function query ($query) {
get_execution_time();
IF($connection==FALSE){
connectbd ();
}
if ($result = mysql_query($query, $this->connection)) {
$this->queries += 1;
} else {
die (mysql_error().' '. __LINE__ .' '. __FILE__);
}
$query_time = get_execution_time();
$this->query_time += $query_time;
$this->query_count++;
$this->query_text .= '<DIV STYLE="border-bottom:1px dashed #B5B5B5;">'.$query.'</DIV>';
return $result;
}

Оно просто не может найти функцию connectbd.....
Помогите, пожалуйста)

_____________
Одесса - мой город!)))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.