Работа с базой данных в rcheCMS

Author Автор: Роман Чернышов    Опубликовано: 24 октября 2011

Краткое описание работы с базой данный в rcheCMS 2.xx, все предельно просто и понятно. Код оформлен в класс, который подключен к системе. В результате в любом месте скрипта достаточно вызвать один из его методов.

Подключение класса для работы с базой данных:
/** Класс базы данных */

$DB= new DB_Engine('mysql', $_CONFIG['DBHOST'], $_CONFIG['DBUSER'], $_CONFIG['DBPASS'], $_CONFIG['DBNAME']);
 
Получение всех данных таблицы в массив:
<pre lang="php">$all = $DB->getAll('SELECT * FROM table WHERE условие');
 
foreach($all as $num => $item)
{
print_R($item);
}

после выполнения запроса, результатом возврщается массив $all где ключем является номер записи, а значением — массив значений строки таблицы, которая является результатом выполнения запроса. Раньше бы мы сделали так:

$result = mysql_query('SELECT * FROM table WHERE условие');
$num=0;
 
while($data = mysql_fetch_array($result))
{
$num++;
print_r($data);
}

Получение одного значение нужной нам ячейки таблицы:

echo $DB->getOne('SELECT title FROM table WHERE id="1');

Выведет на экран название записи с номером 1

Получение одной строки таблицы:

$item = $DB->getRow('SELECT id, title, email FROM table WHERE id=10');
echo $item['id'];
echo $item['title'];
echo $item['email'];

Возвращает массив полученных параметров таблицы.

Получение колонки результатов:

$items = $DB->getCol('SELECT  title FROM table WHERE id=10');
print_r(items);

Вывод всех и единичного значения из таблицы как массива.

Выполение запроса (DELETE, INSERT, …)

$DB->execute('DELETE FROM table WHERE id="111"');

Просто выполняет запрос, который не возвращает результат.

Оставить комментарий

Автор блога
Роман Чернышов
Веб-разработчик,
Full Stack
Senior, Architect
PHP, JavaScript, Node.JS, Python, HTML 5, CSS 3, MySQL, Bash, Linux Admin
Заказать работу
предложить оффер

Моя книга
Книга. Веб-разработчик. Легкий вход в профессию
Печатная книга
Веб-разработчик.
Легкий вход в профессию
Купить за 159₽
Последние вопросы
Список вопросов
Последние комментарии
Меню

Archive

Мои проекты
Insurance CMS Love Crm CMS Совместные покупки Мой PHP Framework Хостинг для моих клиентов Лицензии на мой софт и поддержка