В PHP-платформе Wad-er объект соединения с базой данных ADONewConnection создается один раз и в дальнейшем доступен из любой точки приложения как свойство conn класса PageParser ($parser->conn). Именно через поля и методы данного объекта и будет в дальнейшем вестись работа с базой данных.
Вот некоторые примеры использования методов ADONewConnection.
Простой пример запроса к БД с использованием методов ADONewConnection
Выбираем из базы все опубликованные на сайте страницы:
$sql = "SELECT name_" . $parser->lang_suff. ", description FROM sys_objects WHERE objtype='sys_elements_pages' AND bool3=1 ORDER BY creaton DESC"; $rs = $parser->conn->Execute($sql); $res = ''; $ares = array(); if(!$rs) return ''; while($row = $rs->FetchRow()) { print $row[0] . "
" . $row[1] . "
"; }
Примечание. PHP-платформа Wad-er не использует префиксы таблиц, потому что ADODB с ними не работает. Все системные таблицы жестко привязаны к префиксу sys_, т.е. названия системных таблиц начинаются на этот префикс (sys_objects, sys_log, sys_comments и т.д.).
Обновление таблицы
$colval = "String"; $key = "sys_pages_main"; $ok = $parser->conn->Execute("UPDATE sys_objects SET description =? WHERE objid=?",array($colval, $key)) or die("Error in query: $query. " . $parser->conn->ErrorMsg());
Примечание. В запросах могут использоваться плейсхолдеры. В качестве плейсхолдеров выступает вопросительный знак (?) . Если в запросе используются плейсхолдеры, вторым параметром метода Execute обязательно должен бать масив значений для замены плейсхолдеров.
Извлечение результатов запроса
Может извлекаться ячейка, одна строка, все строки, ассоциативный массив.
//одна ячейка $val = $parser->conn->GetOne("SELECT col FROM table WHERE key='John'"); //одна строка $row = $parser->conn->GetRow("SELECT col FROM table WHERE key='John'"); //все строки $arr = $parser->conn->GetAll("SELECT col FROM table"); //ассоциативный массив $key=>col $arr = $parser->conn->GetAssoc("SELECT key,col FROM table");