<?php 
    // change to wherever you stored adodb 
    require_once("adodb/adodb.inc.php"); 
 
    // set fetch mode to associative arrays 
    $ADODB_FETCH_MODE = ADODB_FETCH_ASSOC; 
 
    // Part of the hack to get the db_fetch function to work 
    $_gaRows  = array(); 
    $_giCount = 0; 
 
    function db_connect($oArray) { 
        $sType     = substr($oArray[2], 0, strpos($oArray[2], ":")); 
        $oArray[2] = substr($oArray[2], strpos($oArray[2], ":") + 1); 
        $oCon      = ADONewConnection($sType); 
        $oCon->Connect($oArray[2], $oArray[0], $oArray[1], $oArray[3]); 
         
        if(!$oCon) { 
            die($oCon->ErrorMsg()); 
        } 
        return $oCon; 
    } 
 
    function db_select_db($sDatabase) { 
        // Already taken care of in the $oCon->Connect() call 
    } 
 
    function db_query($oCon, $sSQL) { 
        $oRes = $oCon->Execute($sSQL); 
         
        if(!$oRes) { 
            die($oCon->ErrorMsg()); 
        } 
        return $oRes; 
    } 
 
    function db_colnum($oRes) { 
        return $oRes->FieldCount(); 
    } 
 
    function db_columnName($oRes, $iPos) { 
        $oField = $oRes->FetchField($iPos - 1); 
        return $oField->name; 
    } 
         
    function db_columnType($oRes, $iPos) { 
        $oField = $oRes->FetchField($iPos - 1); 
        return $oField->type; 
    } 
 
    function db_fetch($oRes) { 
        // needed nasty hack to get it to work 
        // adodb didnt like me calling $oRes->FetchRow() 
        // it would never move to the next row and it would infinate loop 
        global $_gaRows, $_giCount; 
         
        if($_gaRows == array()) { 
            $_gaRows = $oRes->GetArray(); 
            $_giCount++; 
            return $_gaRows[0]; 
        } else { 
            if($_giCount >= $oRes->RowCount()) { 
                return false; 
            } 
            $_giCount++; 
            return $_gaRows[$_giCount - 1]; 
        } 
    } 
 
    function db_free($oRes) { 
        $oRes->Close(); 
        return true; 
    } 
 
    function db_disconnect($oCon) { 
        $oCon->Close(); 
        return true; 
    } 
?> 
 
 |