Объект $DB является главным объектом для работы с базой данных. Крайне не желательно использование стандартных PHP-MySQL функций в коде модуля. Итак, сначала надо подключить этот объект через ключевое слово global:
global $DB;
Сам по себе объект инициализируется в модуле index.php, реализация содержится в модуле db_fns.php
| Синтаксис | Описание |
|---|---|
| resource db_handler | Подключение к БД (в форме MySQL) |
| resource query_result | Результат запроса (в форме MySQL) |
| int num_results | Количество полученных строк (rows). Для запросов с ключевыми словами INSERT, UPDATE, DELETE равен 0. |
| array row | Ассоциативный массив, содержащий список результатов для текущей строки. Для получения следующий строки, используйте функцию next_row. |
| bool allow_get_rows | |
| int row_count | Показывает, сколько строк уже считано |
| int successful | Указывает на успешность выполнения запроса: 1 – успех, 0 - ошибка |
| string error_message | Строка, содержащая объяснение ошибки |
| int queries | Уже произведено запросов |
| Синтаксис | Описание |
|---|---|
| void connect() | Подключается к БД |
| int query(string q) | Посылка запроса mySQL |
| void next_row() | Считывает следующую строку результатов |
| mixed fast_query(string q, string f) | Посылает запрос mySQL, считывает первую же строку результатов, выбирает поле f и возвращает его. При ошибке, возвращает 0. Не изменяет переменных предыдущего запроса, сделанного по функции query. |
Наиболее удачная реализация работы с БД:
function test_db() { global $DB; $DB->query('SELECT * FROM sta_users WHERE gid=2'); while($DB->allow_get_rows==true) { echo $DB->row['name'].'<br>'; $DB->next_row(); } }