12.6 The ODBC Module


ODBC is a Microsoft specification that enables developers to access many different databases through a single API (similar to what we're doing). You can also use PHP's ODBC functions to access IBM's DB2 databases directly.

 DB/odbc.php <?php function db_connect($args=array()) {     if (isset($args[3])) {         return @odbc_connect($args[0], $args[1]. $args[2], $args[3]);     }     return @odbc_connect($args[0], $args[1], $args[2]); } function db_pconnect($args=array()) {     if (isset($args[3])) {         return @odbc_pconnect($args[0], $args[1], $args[2], $args[3]);     }     return @odbc_pconnect($args[0], $args[1], $args[2]); } function db_select_db($args=array()) {     return(true); } function db_close($args=array()) {     return @odbc_close($args[0]); } function db_query($args=array()) {     return @odbc_do($args[0], $args[1]); } function db_db_query($args=array()) {     return db_query($args[0], $args[2]); } function &db_fetchrow($args=array()) {     if ($args[1] == DB_GETMODE_ASSOC) {         $rows = @odbc_fetch_array($args[0]);     } else {         @odbc_fetch_into($args[0], &$row);     }     return($row); } function db_prepare($args=array()) {     return @odbc_prepare($args[0], $args[1]); } function db_execute($args=array()) {     if (isset($args[1])) {         return @odbc_execute($args[0], $args[1]);     }     return @odbc_execute($args[0], $args[1]); } function db_num_rows($args=array()) {     return @odbc_num_rows($args[0]); } function db_free_result($args=array()) {     return @odbc_free_result($args[0]); } function db_commit($args=array()) {     return @odbc_commit($args[0]); } function db_rollback($args=array()) {     return @odbc_rollback($args[0]); } function db_autoCommit($args=array()) {     return @odbc_autocommit($args[0], $args[1]); } ?> 

Explanation

The ODBC module is a pretty straightforward module to implement because it contains most of the common features (more than any of the other modules, actually). In fact, we don't even need to implement any of the functionality ourselves .



PHP Developer's Cookbook
PHP Developers Cookbook (2nd Edition)
ISBN: 0672323257
EAN: 2147483647
Year: 2000
Pages: 351

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net