Функции для работы с БД MySQL на PHP

PHP функции для работы с БД MySQL.

function get_microtime() {
	list($usec, $sec) = explode(" ", microtime());
	return ((float)$usec + (float)$sec);
}

$mysql_queries_count = 0;
$mysql_queries_time = array();

function dbquery($query) {
	global $mysql_queries_count, $mysql_queries_time; $mysql_queries_count++;
	$query_time = get_microtime();
	$result = @mysql_query($query);
	$query_time = substr((get_microtime() - $query_time),0,7);
	$mysql_queries_time[$mysql_queries_count] = array($query_time, $query);
	if (!$result) {
		echo mysql_error();
		return false;
	} else {
		return $result;
	}
}

function dbresult($query, $row) {
	global $mysql_queries_count, $mysql_queries_time;

	$query_time = get_microtime();
	$result = @mysql_result($query, $row);
	$query_time = substr((get_microtime() - $query_time),0,7);

	$mysql_queries_time[$mysql_queries_count] = array($query_time, $query);

	if (!$result) {
		echo mysql_error();
		return false;
	} else {
		return $result;
	}
}

function dbrows($query) {
	$result = @mysql_num_rows($query);
	return $result;
}

function dbarray($query) {
	$result = @mysql_fetch_assoc($query);
	if (!$result) {
		echo mysql_error();
		return false;
	} else {
		return $result;
	}
}

function dbarraynum($query) {
	$result = @mysql_fetch_row($query);
	if (!$result) {
		echo mysql_error();
		return false;
	} else {
		return $result;
	}
}

function dbconnect($db_host, $db_user, $db_pass, $db_name, $db_charset) {
        $db_connect = @mysql_connect($db_host, $db_user, $db_pass);
        $db_select = @mysql_select_db($db_name);
        mysql_query ('SET NAMES '.$db_charset);
        mysql_query ('SET CHARACTER SET '.$db_charset);
        if (!$db_connect) {
                die("<div style='font-family:Verdana;font-size:11px;text-align:center;'><b>Unable to establish connection to MySQL</b><br>".mysql_errno()." : ".mysql_error()."</div>");
        } elseif (!$db_select) {
                die("<div style='font-family:Verdana;font-size:11px;text-align:center;'><b>Unable to select MySQL database</b><br>".mysql_errno()." : ".mysql_error()."</div>");
        }
        mysql_query("SET character_set_client='".$db_charset."'");
        mysql_query("SET character_set_connection='".$db_charset."'");
        mysql_query("SET character_set_results='".$db_charset."'");
}


Пример:

$db_host = "localhost"; // сервер БД
$db_user = ""; // пользователь БД
$db_pass = ""; // пароль пользователя
$db_name = ""; // имя пользователя
$db_charset = ""; // кодировка БД

$link = dbconnect($db_host, $db_user, $db_pass, $db_name, $db_charset);
unset($db_host, $db_user, $db_pass);


dbquery($query); // посылает запрос активной базе данных сервера, на который ссылается переданный указатель.
dbarray($query); // возвращает ассоциативный массив с названиями индексов, соответсвующими названиям колонок или FALSE если рядов больше нет.
dbresult($query, $row); // возвращает значение одной ячейки результата запроса.
dbarraynum($query); // возвращает массив, содержашей данные обработанного ряда, или FALSE, если рядов больше нет.
dbrows($query); // возвращает количество рядов результата запроса.


Пример запроса SELECT:

$result = dbquery("SELECT * FROM Table");
if (dbrows($result)) {
	while ($data = dbarray($result)) {
		echo $data['id'];
	}
} else {
	die("Not Found.");
}



Просмотров: 1916
13.02.2015, 01:32 -

Категория: Статьи » Программирование » PHP