Написал adminв 07.01.2010 2:50:00 (6192 прочтений)
Данный класс предназначен для зпроссов к базе данных MySQL.
Данный класс является наследником класса XoopsDatabase.
Исходник класса находится в файле XOOPS_ROOT_PATH.’/class/ database/mysqldatabase.php’
Класс содержит следующие методы:
Подключение к базе данных:
$xoopsDB-> connect($selectdb = true);
@param bool $selectdb select the database now?
@returnboolsuccessful?
Вывод результата как перечисленный массив:
$xoopsDB->fetchRow($result);
@param resource $result
@returnarray
Анологичен @mysql_fetch_row(). Возвращает массив, содержашей данные обработанного ряда, или FALSE, если рядов больше нет. $xoopsDB->fetchRow() обрабатывает один ряд результата, на который ссылается переданный указатель. Ряд возвращается в массиве. Каждая колонка распологается в следующей ячейке массива. Массив начинается с индекса 0. Последующие вызовы функции $xoopsDB->fetchRow() вернут следующие ряды или FALSE, если рядов не осталось.
Аналогичен @mysql_fetch_assoc(). Возвращает ассоциативный массив с названиями индексов, соответствующими названиям колонок или FALSE если рядов больше нет.
Аналогичен @mysql_fetch_array(). Возвращает массив с обработанным рядом результата запроса, или FALSE, если рядов больше нет. $xoopsDB->fetchBoth() расширенная версия функции $xoopsDB->fetchRow(). В дополнении к хранению значений в массиве с численными индексами, функция возвращает значения в массиве с индексами по названию колонок.
Получение ID автоинкремента после запроса INSERT:
$xoopsDB->getInsertId();
@return int
Аналогичен mysql_insert_id(). Возвращает ID, сгенерированный при последнем INSERT-запросе. Данный метод должен применятся сразу после вставки в БД.
Пример:
$xoopsDB->query('INSERT INTO ***');
$id = $xoopsDB->getInsertId();
Получение числа рядов в запросе:
$xoopsDB->getRowsNum($result);
@param resource query result
@returnint
Аналогичен @mysql_num_rows(). Возвращает количество рядов результата запроса. Эта команда работает только с запросами SELECT.
Пример:
$result= $xoopsDB->query("SELECT ***");
$count = $xoopsDB->getRowsNum($result); // Вернёт число рядов в запросе
Получить число затронутых рядов:
$xoopsDB->getAffectedRows();
@returnint
Аналогичен mysql_affected_rows(). Возвращает число затронутых прошлой операцией рядов.
Закрытиесоединения с MySQL:
$xoopsDB->close();
Аналогичен mysql_close(). Закрывает соединение с сервером MySQL.
Освобождение памяти после запроса:
$xoopsDB->freeRecordSet ($result);
@paramрезультат запроса
@returnboolTRUEв случае успеха, FALSEв случае неудачи
Аналогичен mysql_free_result. Освобождает память от результата запроса.
while ($row = $xoopsDB->fetchArray($result)) {***} // Производимоперации
$xoopsDB->freeRecordSet ($result);// Очищаем память
Получение текста ошибки во время запроса:
$xoopsDB->error();
@return bool Returns the error text from the last MySQL function, or '' (the empty string) if no error occurred.
Аналогичен @mysql_error(). Возвращает строку, содержащую текст ошибки выполнения последней функции MySQL, или '' (пустая строка) если операция выполнена успешно.
$result = $xoopsDB->query("SELECT *** WHERE col = ".$where); // Делаемзапрос
Выполнение запроса форсировано:
$xoopsDB->queryF($sql, $limit=0, $start=0);
@param string $sql a valid MySQL query
@param int $limit number of records to return
@param int $start offset of first record to return
@return resource query result or FALSE if successful or TRUE if successful and no result
Аналогичен mysql_query(). Посылает запрос базе данных сервера. Результат запроса буфферизируется. Запрос происходит форсировано, можно обновлять, удалять базу данных через GET запрос.
Класс Criteria создан для создания критериев выборки из БД. Сначала объявляем класс $criteria = new CriteriaCompo(); Затем вставляем в него элементы $criteriaKeywords-...
Для начала нужно в нужных модулях создать папку preloads и положить в неё *.php файлы с правильными именами (core.php плагин для файлов ядра). В файлах плагинах...