deleting old folder after move
[geo.git] / edit_wp5_web_folder / geo / curves / inc / adodb5 / drivers / adodb-mysql.inc.php
diff --git a/edit_wp5_web_folder/geo/curves/inc/adodb5/drivers/adodb-mysql.inc.php b/edit_wp5_web_folder/geo/curves/inc/adodb5/drivers/adodb-mysql.inc.php
deleted file mode 100644 (file)
index 1600c03..0000000
+++ /dev/null
@@ -1,789 +0,0 @@
-<?php
-/*
-V5.02 24 Sept 2007   (c) 2000-2007 John Lim (jlim#natsoft.com.my). All rights reserved.
-  Released under both BSD license and Lesser GPL library license. 
-  Whenever there is any discrepancy between the two licenses, 
-  the BSD license will take precedence.
-  Set tabs to 8.
-  
-  MySQL code that does not support transactions. Use mysqlt if you need transactions.
-  Requires mysql client. Works on Windows and Unix.
-  
- 28 Feb 2001: MetaColumns bug fix - suggested by  Freek Dijkstra (phpeverywhere@macfreek.com)
-*/ 
-
-// security - hide paths
-if (!defined('ADODB_DIR')) die();
-
-if (! defined("_ADODB_MYSQL_LAYER")) {
- define("_ADODB_MYSQL_LAYER", 1 );
-
-class ADODB_mysql extends ADOConnection {
-       var $databaseType = 'mysql';
-       var $dataProvider = 'mysql';
-       var $hasInsertID = true;
-       var $hasAffectedRows = true;    
-       var $metaTablesSQL = "SHOW TABLES";     
-       var $metaColumnsSQL = "SHOW COLUMNS FROM `%s`";
-       var $fmtTimeStamp = "'Y-m-d H:i:s'";
-       var $hasLimit = true;
-       var $hasMoveFirst = true;
-       var $hasGenID = true;
-       var $isoDates = true; // accepts dates in ISO format
-       var $sysDate = 'CURDATE()';
-       var $sysTimeStamp = 'NOW()';
-       var $hasTransactions = false;
-       var $forceNewConnect = false;
-       var $poorAffectedRows = true;
-       var $clientFlags = 0;
-       var $substr = "substring";
-       var $nameQuote = '`';           /// string to use to quote identifiers and names
-       var $compat323 = false;                 // true if compat with mysql 3.23
-       
-       function ADODB_mysql() 
-       {                       
-               if (defined('ADODB_EXTENSION')) $this->rsPrefix .= 'ext_';
-       }
-       
-       function ServerInfo()
-       {
-               $arr['description'] = ADOConnection::GetOne("select version()");
-               $arr['version'] = ADOConnection::_findvers($arr['description']);
-               return $arr;
-       }
-       
-       function IfNull( $field, $ifNull ) 
-       {
-               return " IFNULL($field, $ifNull) "; // if MySQL
-       }
-       
-       
-       function MetaTables($ttype=false,$showSchema=false,$mask=false) 
-       {       
-               $save = $this->metaTablesSQL;
-               if ($showSchema && is_string($showSchema)) {
-                       $this->metaTablesSQL .= " from $showSchema";
-               }
-               
-               if ($mask) {
-                       $mask = $this->qstr($mask);
-                       $this->metaTablesSQL .= " like $mask";
-               }
-               $ret = ADOConnection::MetaTables($ttype,$showSchema);
-               
-               $this->metaTablesSQL = $save;
-               return $ret;
-       }
-       
-       
-       function MetaIndexes ($table, $primary = FALSE, $owner=false)
-       {
-        // save old fetch mode
-        global $ADODB_FETCH_MODE;
-        
-               $false = false;
-        $save = $ADODB_FETCH_MODE;
-        $ADODB_FETCH_MODE = ADODB_FETCH_NUM;
-        if ($this->fetchMode !== FALSE) {
-               $savem = $this->SetFetchMode(FALSE);
-        }
-        
-        // get index details
-        $rs = $this->Execute(sprintf('SHOW INDEX FROM %s',$table));
-        
-        // restore fetchmode
-        if (isset($savem)) {
-                $this->SetFetchMode($savem);
-        }
-        $ADODB_FETCH_MODE = $save;
-        
-        if (!is_object($rs)) {
-                return $false;
-        }
-        
-        $indexes = array ();
-        
-        // parse index data into array
-        while ($row = $rs->FetchRow()) {
-                if ($primary == FALSE AND $row[2] == 'PRIMARY') {
-                        continue;
-                }
-                
-                if (!isset($indexes[$row[2]])) {
-                        $indexes[$row[2]] = array(
-                                'unique' => ($row[1] == 0),
-                                'columns' => array()
-                        );
-                }
-                
-                $indexes[$row[2]]['columns'][$row[3] - 1] = $row[4];
-        }
-        
-        // sort columns by order in the index
-        foreach ( array_keys ($indexes) as $index )
-        {
-                ksort ($indexes[$index]['columns']);
-        }
-        
-        return $indexes;
-       }
-
-       
-       // if magic quotes disabled, use mysql_real_escape_string()
-       function qstr($s,$magic_quotes=false)
-       {
-               if (is_null($s)) return 'NULL';
-               if (!$magic_quotes) {
-               
-                       if (ADODB_PHPVER >= 0x4300) {
-                               if (is_resource($this->_connectionID))
-                                       return "'".mysql_real_escape_string($s,$this->_connectionID)."'";
-                       }
-                       if ($this->replaceQuote[0] == '\\'){
-                               $s = adodb_str_replace(array('\\',"\0"),array('\\\\',"\\\0"),$s);
-                       }
-                       return  "'".str_replace("'",$this->replaceQuote,$s)."'"; 
-               }
-               
-               // undo magic quotes for "
-               $s = str_replace('\\"','"',$s);
-               return "'$s'";
-       }
-       
-       function _insertid()
-       {
-               return ADOConnection::GetOne('SELECT LAST_INSERT_ID()');
-               //return mysql_insert_id($this->_connectionID);
-       }
-       
-       function GetOne($sql,$inputarr=false)
-       {
-               if ($this->compat323 == false && strncasecmp($sql,'sele',4) == 0) {
-                       $rs = $this->SelectLimit($sql,1,-1,$inputarr);
-                       if ($rs) {
-                               $rs->Close();
-                               if ($rs->EOF) return false;
-                               return reset($rs->fields);
-                       }
-               } else {
-                       return ADOConnection::GetOne($sql,$inputarr);
-               }
-               return false;
-       }
-       
-       function BeginTrans()
-       {
-               if ($this->debug) ADOConnection::outp("Transactions not supported in 'mysql' driver. Use 'mysqlt' or 'mysqli' driver");
-       }
-       
-       function _affectedrows()
-       {
-                       return mysql_affected_rows($this->_connectionID);
-       }
-  
-        // See http://www.mysql.com/doc/M/i/Miscellaneous_functions.html
-       // Reference on Last_Insert_ID on the recommended way to simulate sequences
-       var $_genIDSQL = "update %s set id=LAST_INSERT_ID(id+1);";
-       var $_genSeqSQL = "create table %s (id int not null)";
-       var $_genSeqCountSQL = "select count(*) from %s";
-       var $_genSeq2SQL = "insert into %s values (%s)";
-       var $_dropSeqSQL = "drop table %s";
-       
-       function CreateSequence($seqname='adodbseq',$startID=1)
-       {
-               if (empty($this->_genSeqSQL)) return false;
-               $u = strtoupper($seqname);
-               
-               $ok = $this->Execute(sprintf($this->_genSeqSQL,$seqname));
-               if (!$ok) return false;
-               return $this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1));
-       }
-       
-
-       function GenID($seqname='adodbseq',$startID=1)
-       {
-               // post-nuke sets hasGenID to false
-               if (!$this->hasGenID) return false;
-               
-               $savelog = $this->_logsql;
-               $this->_logsql = false;
-               $getnext = sprintf($this->_genIDSQL,$seqname);
-               $holdtransOK = $this->_transOK; // save the current status
-               $rs = @$this->Execute($getnext);
-               if (!$rs) {
-                       if ($holdtransOK) $this->_transOK = true; //if the status was ok before reset
-                       $u = strtoupper($seqname);
-                       $this->Execute(sprintf($this->_genSeqSQL,$seqname));
-                       $cnt = $this->GetOne(sprintf($this->_genSeqCountSQL,$seqname));
-                       if (!$cnt) $this->Execute(sprintf($this->_genSeq2SQL,$seqname,$startID-1));
-                       $rs = $this->Execute($getnext);
-               }
-               
-               if ($rs) {
-                       $this->genID = mysql_insert_id($this->_connectionID);
-                       $rs->Close();
-               } else
-                       $this->genID = 0;
-               
-               $this->_logsql = $savelog;
-               return $this->genID;
-       }
-       
-       function MetaDatabases()
-       {
-               $qid = mysql_list_dbs($this->_connectionID);
-               $arr = array();
-               $i = 0;
-               $max = mysql_num_rows($qid);
-               while ($i < $max) {
-                       $db = mysql_tablename($qid,$i);
-                       if ($db != 'mysql') $arr[] = $db;
-                       $i += 1;
-               }
-               return $arr;
-       }
-       
-               
-       // Format date column in sql string given an input format that understands Y M D
-       function SQLDate($fmt, $col=false)
-       {       
-               if (!$col) $col = $this->sysTimeStamp;
-               $s = 'DATE_FORMAT('.$col.",'";
-               $concat = false;
-               $len = strlen($fmt);
-               for ($i=0; $i < $len; $i++) {
-                       $ch = $fmt[$i];
-                       switch($ch) {
-                               
-                       default:
-                               if ($ch == '\\') {
-                                       $i++;
-                                       $ch = substr($fmt,$i,1);
-                               }
-                               /** FALL THROUGH */
-                       case '-':
-                       case '/':
-                               $s .= $ch;
-                               break;
-                               
-                       case 'Y':
-                       case 'y':
-                               $s .= '%Y';
-                               break;
-                       case 'M':
-                               $s .= '%b';
-                               break;
-                               
-                       case 'm':
-                               $s .= '%m';
-                               break;
-                       case 'D':
-                       case 'd':
-                               $s .= '%d';
-                               break;
-                       
-                       case 'Q':
-                       case 'q':
-                               $s .= "'),Quarter($col)";
-                               
-                               if ($len > $i+1) $s .= ",DATE_FORMAT($col,'";
-                               else $s .= ",('";
-                               $concat = true;
-                               break;
-                       
-                       case 'H': 
-                               $s .= '%H';
-                               break;
-                               
-                       case 'h':
-                               $s .= '%I';
-                               break;
-                               
-                       case 'i':
-                               $s .= '%i';
-                               break;
-                               
-                       case 's':
-                               $s .= '%s';
-                               break;
-                               
-                       case 'a':
-                       case 'A':
-                               $s .= '%p';
-                               break;
-                               
-                       case 'w':
-                               $s .= '%w';
-                               break;
-                               
-                        case 'W':
-                               $s .= '%U';
-                               break;
-                               
-                       case 'l':
-                               $s .= '%W';
-                               break;
-                       }
-               }
-               $s.="')";
-               if ($concat) $s = "CONCAT($s)";
-               return $s;
-       }
-       
-
-       // returns concatenated string
-       // much easier to run "mysqld --ansi" or "mysqld --sql-mode=PIPES_AS_CONCAT" and use || operator
-       function Concat()
-       {
-               $s = "";
-               $arr = func_get_args();
-               
-               // suggestion by andrew005@mnogo.ru
-               $s = implode(',',$arr); 
-               if (strlen($s) > 0) return "CONCAT($s)";
-               else return '';
-       }
-       
-       function OffsetDate($dayFraction,$date=false)
-       {               
-               if (!$date) $date = $this->sysDate;
-               
-               $fraction = $dayFraction * 24 * 3600;
-               return $date . ' + INTERVAL ' .  $fraction.' SECOND';
-               
-//             return "from_unixtime(unix_timestamp($date)+$fraction)";
-       }
-       
-       // returns true or false
-       function _connect($argHostname, $argUsername, $argPassword, $argDatabasename)
-       {
-               if (!empty($this->port)) $argHostname .= ":".$this->port;
-               
-               if (ADODB_PHPVER >= 0x4300)
-                       $this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword,
-                                                                                               $this->forceNewConnect,$this->clientFlags);
-               else if (ADODB_PHPVER >= 0x4200)
-                       $this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword,
-                                                                                               $this->forceNewConnect);
-               else
-                       $this->_connectionID = mysql_connect($argHostname,$argUsername,$argPassword);
-       
-               if ($this->_connectionID === false) return false;
-               if ($argDatabasename) return $this->SelectDB($argDatabasename);
-               return true;    
-       }
-       
-       // returns true or false
-       function _pconnect($argHostname, $argUsername, $argPassword, $argDatabasename)
-       {
-               if (!empty($this->port)) $argHostname .= ":".$this->port;
-               
-               if (ADODB_PHPVER >= 0x4300)
-                       $this->_connectionID = mysql_pconnect($argHostname,$argUsername,$argPassword,$this->clientFlags);
-               else
-                       $this->_connectionID = mysql_pconnect($argHostname,$argUsername,$argPassword);
-               if ($this->_connectionID === false) return false;
-               if ($this->autoRollback) $this->RollbackTrans();
-               if ($argDatabasename) return $this->SelectDB($argDatabasename);
-               return true;    
-       }
-       
-       function _nconnect($argHostname, $argUsername, $argPassword, $argDatabasename)
-       {
-               $this->forceNewConnect = true;
-               return $this->_connect($argHostname, $argUsername, $argPassword, $argDatabasename);
-       }
-       
-       function MetaColumns($table) 
-       {
-               $this->_findschema($table,$schema);
-               if ($schema) {
-                       $dbName = $this->database;
-                       $this->SelectDB($schema);
-               }
-               global $ADODB_FETCH_MODE;
-               $save = $ADODB_FETCH_MODE;
-               $ADODB_FETCH_MODE = ADODB_FETCH_NUM;
-               
-               if ($this->fetchMode !== false) $savem = $this->SetFetchMode(false);
-               $rs = $this->Execute(sprintf($this->metaColumnsSQL,$table));
-               
-               if ($schema) {
-                       $this->SelectDB($dbName);
-               }
-               
-               if (isset($savem)) $this->SetFetchMode($savem);
-               $ADODB_FETCH_MODE = $save;
-               if (!is_object($rs)) {
-                       $false = false;
-                       return $false;
-               }
-                       
-               $retarr = array();
-               while (!$rs->EOF){
-                       $fld = new ADOFieldObject();
-                       $fld->name = $rs->fields[0];
-                       $type = $rs->fields[1];
-                       
-                       // split type into type(length):
-                       $fld->scale = null;
-                       if (preg_match("/^(.+)\((\d+),(\d+)/", $type, $query_array)) {
-                               $fld->type = $query_array[1];
-                               $fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1;
-                               $fld->scale = is_numeric($query_array[3]) ? $query_array[3] : -1;
-                       } elseif (preg_match("/^(.+)\((\d+)/", $type, $query_array)) {
-                               $fld->type = $query_array[1];
-                               $fld->max_length = is_numeric($query_array[2]) ? $query_array[2] : -1;
-                       } elseif (preg_match("/^(enum)\((.*)\)$/i", $type, $query_array)) {
-                               $fld->type = $query_array[1];
-                               $arr = explode(",",$query_array[2]);
-                               $fld->enums = $arr;
-                               $zlen = max(array_map("strlen",$arr)) - 2; // PHP >= 4.0.6
-                               $fld->max_length = ($zlen > 0) ? $zlen : 1;
-                       } else {
-                               $fld->type = $type;
-                               $fld->max_length = -1;
-                       }
-                       $fld->not_null = ($rs->fields[2] != 'YES');
-                       $fld->primary_key = ($rs->fields[3] == 'PRI');
-                       $fld->auto_increment = (strpos($rs->fields[5], 'auto_increment') !== false);
-                       $fld->binary = (strpos($type,'blob') !== false);
-                       $fld->unsigned = (strpos($type,'unsigned') !== false);
-                       $fld->zerofill = (strpos($type,'zerofill') !== false);
-
-                       if (!$fld->binary) {
-                               $d = $rs->fields[4];
-                               if ($d != '' && $d != 'NULL') {
-                                       $fld->has_default = true;
-                                       $fld->default_value = $d;
-                               } else {
-                                       $fld->has_default = false;
-                               }
-                       }
-                       
-                       if ($save == ADODB_FETCH_NUM) {
-                               $retarr[] = $fld;
-                       } else {
-                               $retarr[strtoupper($fld->name)] = $fld;
-                       }
-                               $rs->MoveNext();
-                       }
-               
-                       $rs->Close();
-                       return $retarr; 
-       }
-               
-       // returns true or false
-       function SelectDB($dbName) 
-       {
-               $this->database = $dbName;
-               $this->databaseName = $dbName; # obsolete, retained for compat with older adodb versions
-               if ($this->_connectionID) {
-                       return @mysql_select_db($dbName,$this->_connectionID);          
-               }
-               else return false;      
-       }
-       
-       // parameters use PostgreSQL convention, not MySQL
-       function SelectLimit($sql,$nrows=-1,$offset=-1,$inputarr=false,$secs=0)
-       {
-               $offsetStr =($offset>=0) ? ((integer)$offset)."," : '';
-               // jason judge, see http://phplens.com/lens/lensforum/msgs.php?id=9220
-               if ($nrows < 0) $nrows = '18446744073709551615'; 
-               
-               if ($secs)
-                       $rs = $this->CacheExecute($secs,$sql." LIMIT $offsetStr".((integer)$nrows),$inputarr);
-               else
-                       $rs = $this->Execute($sql." LIMIT $offsetStr".((integer)$nrows),$inputarr);
-               return $rs;
-       }
-       
-       // returns queryID or false
-       function _query($sql,$inputarr)
-       {
-       //global $ADODB_COUNTRECS;
-               //if($ADODB_COUNTRECS) 
-               return mysql_query($sql,$this->_connectionID);
-               //else return @mysql_unbuffered_query($sql,$this->_connectionID); // requires PHP >= 4.0.6
-       }
-
-       /*      Returns: the last error message from previous database operation        */      
-       function ErrorMsg() 
-       {
-       
-               if ($this->_logsql) return $this->_errorMsg;
-               if (empty($this->_connectionID)) $this->_errorMsg = @mysql_error();
-               else $this->_errorMsg = @mysql_error($this->_connectionID);
-               return $this->_errorMsg;
-       }
-       
-       /*      Returns: the last error number from previous database operation */      
-       function ErrorNo() 
-       {
-               if ($this->_logsql) return $this->_errorCode;
-               if (empty($this->_connectionID))  return @mysql_errno();
-               else return @mysql_errno($this->_connectionID);
-       }
-       
-       // returns true or false
-       function _close()
-       {
-               @mysql_close($this->_connectionID);
-               $this->_connectionID = false;
-       }
-
-       
-       /*
-       * Maximum size of C field
-       */
-       function CharMax()
-       {
-               return 255; 
-       }
-       
-       /*
-       * Maximum size of X field
-       */
-       function TextMax()
-       {
-               return 4294967295; 
-       }
-       
-       // "Innox - Juan Carlos Gonzalez" <jgonzalez#innox.com.mx>
-       function MetaForeignKeys( $table, $owner = FALSE, $upper = FALSE, $associative = FALSE )
-     {
-        global $ADODB_FETCH_MODE;
-               if ($ADODB_FETCH_MODE == ADODB_FETCH_ASSOC || $this->fetchMode == ADODB_FETCH_ASSOC) $associative = true;
-
-         if ( !empty($owner) ) {
-            $table = "$owner.$table";
-         }
-         $a_create_table = $this->getRow(sprintf('SHOW CREATE TABLE %s', $table));
-                if ($associative) $create_sql = $a_create_table["Create Table"];
-         else $create_sql  = $a_create_table[1];
-
-         $matches = array();
-
-         if (!preg_match_all("/FOREIGN KEY \(`(.*?)`\) REFERENCES `(.*?)` \(`(.*?)`\)/", $create_sql, $matches)) return false;
-            $foreign_keys = array();            
-         $num_keys = count($matches[0]);
-         for ( $i = 0;  $i < $num_keys;  $i ++ ) {
-             $my_field  = explode('`, `', $matches[1][$i]);
-             $ref_table = $matches[2][$i];
-             $ref_field = explode('`, `', $matches[3][$i]);
-
-             if ( $upper ) {
-                 $ref_table = strtoupper($ref_table);
-             }
-
-             $foreign_keys[$ref_table] = array();
-             $num_fields = count($my_field);
-             for ( $j = 0;  $j < $num_fields;  $j ++ ) {
-                 if ( $associative ) {
-                     $foreign_keys[$ref_table][$ref_field[$j]] = $my_field[$j];
-                 } else {
-                     $foreign_keys[$ref_table][] = "{$my_field[$j]}={$ref_field[$j]}";
-                 }
-             }
-         }
-         
-         return  $foreign_keys;
-     }
-        
-       
-}
-       
-/*--------------------------------------------------------------------------------------
-        Class Name: Recordset
---------------------------------------------------------------------------------------*/
-
-
-class ADORecordSet_mysql extends ADORecordSet{ 
-       
-       var $databaseType = "mysql";
-       var $canSeek = true;
-       
-       function ADORecordSet_mysql($queryID,$mode=false) 
-       {
-               if ($mode === false) { 
-                       global $ADODB_FETCH_MODE;
-                       $mode = $ADODB_FETCH_MODE;
-               }
-               switch ($mode)
-               {
-               case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break;
-               case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break;
-               case ADODB_FETCH_DEFAULT:
-               case ADODB_FETCH_BOTH:
-               default:
-                       $this->fetchMode = MYSQL_BOTH; break;
-               }
-               $this->adodbFetchMode = $mode;
-               $this->ADORecordSet($queryID);  
-       }
-       
-       function _initrs()
-       {
-       //GLOBAL $ADODB_COUNTRECS;
-       //      $this->_numOfRows = ($ADODB_COUNTRECS) ? @mysql_num_rows($this->_queryID):-1;
-               $this->_numOfRows = @mysql_num_rows($this->_queryID);
-               $this->_numOfFields = @mysql_num_fields($this->_queryID);
-       }
-       
-       function FetchField($fieldOffset = -1) 
-       {       
-               if ($fieldOffset != -1) {
-                       $o = @mysql_fetch_field($this->_queryID, $fieldOffset);
-                       $f = @mysql_field_flags($this->_queryID,$fieldOffset);
-                       $o->max_length = @mysql_field_len($this->_queryID,$fieldOffset); // suggested by: Jim Nicholson (jnich#att.com)
-                       //$o->max_length = -1; // mysql returns the max length less spaces -- so it is unrealiable
-                       $o->binary = (strpos($f,'binary')!== false);
-               }
-               else if ($fieldOffset == -1) {  /*      The $fieldOffset argument is not provided thus its -1   */
-                       $o = @mysql_fetch_field($this->_queryID);
-               $o->max_length = @mysql_field_len($this->_queryID); // suggested by: Jim Nicholson (jnich#att.com)
-               //$o->max_length = -1; // mysql returns the max length less spaces -- so it is unrealiable
-               }
-                       
-               return $o;
-       }
-
-       function GetRowAssoc($upper=true)
-       {
-               if ($this->fetchMode == MYSQL_ASSOC && !$upper) $row = $this->fields;
-               else $row = ADORecordSet::GetRowAssoc($upper);
-               return $row;
-       }
-       
-       /* Use associative array to get fields array */
-       function Fields($colname)
-       {       
-               // added @ by "Michael William Miller" <mille562@pilot.msu.edu>
-               if ($this->fetchMode != MYSQL_NUM) return @$this->fields[$colname];
-               
-               if (!$this->bind) {
-                       $this->bind = array();
-                       for ($i=0; $i < $this->_numOfFields; $i++) {
-                               $o = $this->FetchField($i);
-                               $this->bind[strtoupper($o->name)] = $i;
-                       }
-               }
-                return $this->fields[$this->bind[strtoupper($colname)]];
-       }
-       
-       function _seek($row)
-       {
-               if ($this->_numOfRows == 0) return false;
-               return @mysql_data_seek($this->_queryID,$row);
-       }
-       
-       function MoveNext()
-       {
-               //return adodb_movenext($this);
-               //if (defined('ADODB_EXTENSION')) return adodb_movenext($this);
-               if (@$this->fields = mysql_fetch_array($this->_queryID,$this->fetchMode)) {
-                       $this->_currentRow += 1;
-                       return true;
-               }
-               if (!$this->EOF) {
-                       $this->_currentRow += 1;
-                       $this->EOF = true;
-               }
-               return false;
-       }
-       
-       function _fetch()
-       {
-               $this->fields =  @mysql_fetch_array($this->_queryID,$this->fetchMode);
-               return is_array($this->fields);
-       }
-       
-       function _close() {
-               @mysql_free_result($this->_queryID);    
-               $this->_queryID = false;        
-       }
-       
-       function MetaType($t,$len=-1,$fieldobj=false)
-       {
-               if (is_object($t)) {
-                       $fieldobj = $t;
-                       $t = $fieldobj->type;
-                       $len = $fieldobj->max_length;
-               }
-               
-               $len = -1; // mysql max_length is not accurate
-               switch (strtoupper($t)) {
-               case 'STRING': 
-               case 'CHAR':
-               case 'VARCHAR': 
-               case 'TINYBLOB': 
-               case 'TINYTEXT': 
-               case 'ENUM': 
-               case 'SET': 
-                       if ($len <= $this->blobSize) return 'C';
-                       
-               case 'TEXT':
-               case 'LONGTEXT': 
-               case 'MEDIUMTEXT':
-                       return 'X';
-                       
-               // php_mysql extension always returns 'blob' even if 'text'
-               // so we have to check whether binary...
-               case 'IMAGE':
-               case 'LONGBLOB': 
-               case 'BLOB':
-               case 'MEDIUMBLOB':
-                       return !empty($fieldobj->binary) ? 'B' : 'X';
-                       
-               case 'YEAR':
-               case 'DATE': return 'D';
-               
-               case 'TIME':
-               case 'DATETIME':
-               case 'TIMESTAMP': return 'T';
-               
-               case 'INT': 
-               case 'INTEGER':
-               case 'BIGINT':
-               case 'TINYINT':
-               case 'MEDIUMINT':
-               case 'SMALLINT': 
-                       
-                       if (!empty($fieldobj->primary_key)) return 'R';
-                       else return 'I';
-               
-               default: return 'N';
-               }
-       }
-
-}
-
-class ADORecordSet_ext_mysql extends ADORecordSet_mysql {      
-       function ADORecordSet_ext_mysql($queryID,$mode=false) 
-       {
-               if ($mode === false) { 
-                       global $ADODB_FETCH_MODE;
-                       $mode = $ADODB_FETCH_MODE;
-               }
-               switch ($mode)
-               {
-               case ADODB_FETCH_NUM: $this->fetchMode = MYSQL_NUM; break;
-               case ADODB_FETCH_ASSOC:$this->fetchMode = MYSQL_ASSOC; break;
-               case ADODB_FETCH_DEFAULT:
-               case ADODB_FETCH_BOTH:
-               default:
-               $this->fetchMode = MYSQL_BOTH; break;
-               }
-               $this->adodbFetchMode = $mode;
-               $this->ADORecordSet($queryID);
-       }
-       
-       function MoveNext()
-       {
-               return @adodb_movenext($this);
-       }
-}
-
-
-}
-?>
\ No newline at end of file