diff options
Diffstat (limited to 'includes/database.pear.inc')
-rw-r--r-- | includes/database.pear.inc | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/includes/database.pear.inc b/includes/database.pear.inc new file mode 100644 index 000000000..7f3da1a00 --- /dev/null +++ b/includes/database.pear.inc @@ -0,0 +1,65 @@ +<?php +// $Id$ + +require_once 'DB.php'; + +function db_connect($url) { + global $db_handle; + + $db_handle = DB::connect($url); + + if (DB::isError($db_handle)) { + die ("Database problem: ". $db_handle->getMessage()); + } + + $db_handle->setFetchMode(DB_FETCHMODE_ASSOC); +} + +function db_query($query, $debug = 0) { + global $db_handle; + + $result = $db_handle->query($query); + + if ($debug) { + print "<p>query: $query<br />"; // error:". $result->getMessage() ."</p>"; + } + + if (DB::isError($result)) { + watchdog("error", "database: ". $result->getMessage() ."\nquery: ". htmlspecialchars($query)); + } + + return $result; +} + +function db_fetch_object($result) { + if ($result) { + return $result->fetchRow(DB_FETCHMODE_OBJECT); + } +} + +function db_fetch_array($result) { + if ($result) { + return $result->fetchRow(DB_FETCHMODE_ASSOC); + } +} + +function db_num_rows($result) { + if ($result) { + return $result->numRows($result); + } +} + +function db_result($result, $row = 0) { + if ($result && $result->numRows($result) > $row) { + $tmp = $result->fetchRow(DB_FETCHMODE_ORDERED); + return $tmp[$row]; + } +} + +function db_error($result) { + global $db_handle; + + return DB::isError($db_handle); +} + +?>
\ No newline at end of file |