From: Tim Starling Date: Sat, 19 Jun 2004 06:45:22 +0000 (+0000) Subject: Allow use of DatabaseFunctions even when errors are ignored X-Git-Tag: 1.5.0alpha1~2816 X-Git-Url: https://git.cyclocoop.org/%28%28?a=commitdiff_plain;h=bafbebea134b7b288e96e3b0fa5a03ee68f58464;p=lhc%2Fweb%2Fwiklou.git Allow use of DatabaseFunctions even when errors are ignored --- diff --git a/includes/DatabaseFunctions.php b/includes/DatabaseFunctions.php index 80e02beafe..f416176996 100644 --- a/includes/DatabaseFunctions.php +++ b/includes/DatabaseFunctions.php @@ -8,10 +8,7 @@ # the load balancer will finally call Database, which will # represent a single connection -# NB: This file follows a connect on demand scheme. Do -# not access the $wgDatabase variable directly unless -# you intend to set it. Use wfGetDB(). -$wgDatabase = false; +# Note: $wgDatabase has ceased to exist. Destroy all references. $wgIsMySQL=false; $wgIsPg=false; @@ -25,7 +22,6 @@ if ($wgDBtype=="mysql") { } -# Replication is not actually implemented just yet # Usually aborts on failure # If errors are explicitly ignored, returns success function wfQuery( $sql, $db, $fname = "" ) @@ -35,7 +31,11 @@ function wfQuery( $sql, $db, $fname = "" ) $wgOut->fatalError( wfMsgNoDB( "wrong_wfQuery_params", $db, $sql ) ); } $c =& wfGetDB( $db ); - return $c->query( $sql, $fname ); + if ( $c !== false ) { + return $c->query( $sql, $fname ); + } else { + return false; + } } function &wfGetDB( $db = DB_LAST ) @@ -51,7 +51,11 @@ function &wfGetDB( $db = DB_LAST ) function wfBufferSQLResults( $newstate, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->setBufferResults( $newstate ); + if ( $db !== false ) { + return $db->setBufferResults( $newstate ); + } else { + return NULL; + } } # Turns on (false) or off (true) the automatic generation and sending @@ -64,120 +68,203 @@ function wfBufferSQLResults( $newstate, $dbi = DB_LAST ) function wfIgnoreSQLErrors( $newstate, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->setIgnoreErrors( $newstate ); + if ( $db !== false ) { + return $db->setIgnoreErrors( $newstate ); + } else { + return NULL; + } } function wfFreeResult( $res, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - $db->freeResult( $res ); + if ( $db !== false ) { + $db->freeResult( $res ); + return true; + } else { + return false; + } } function wfFetchObject( $res, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->fetchObject( $res, $dbi = DB_LAST ); + if ( $db !== false ) { + return $db->fetchObject( $res, $dbi = DB_LAST ); + } else { + return false; + } } function wfFetchRow( $res, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->fetchRow ( $res, $dbi = DB_LAST ); + if ( $db !== false ) { + return $db->fetchRow ( $res, $dbi = DB_LAST ); + } else { + return false; + } } function wfNumRows( $res, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->numRows( $res, $dbi = DB_LAST ); + if ( $db !== false ) { + return $db->numRows( $res, $dbi = DB_LAST ); + } else { + return false; + } } function wfNumFields( $res, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->numFields( $res ); + if ( $db !== false ) { + return $db->numFields( $res ); + } else { + return false; + } } function wfFieldName( $res, $n, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->fieldName( $res, $n, $dbi = DB_LAST ); + if ( $db !== false ) { + return $db->fieldName( $res, $n, $dbi = DB_LAST ); + } else { + return false; + } } function wfInsertId( $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->insertId(); + if ( $db !== false ) { + return $db->insertId(); + } else { + return false; + } } + function wfDataSeek( $res, $row, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->dataSeek( $res, $row ); + if ( $db !== false ) { + return $db->dataSeek( $res, $row ); + } else { + return false; + } } function wfLastErrno( $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->lastErrno(); + if ( $db !== false ) { + return $db->lastErrno(); + } else { + return false; + } } function wfLastError( $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->lastError(); + if ( $db !== false ) { + return $db->lastError(); + } else { + return false; + } } function wfAffectedRows( $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->affectedRows(); + if ( $db !== false ) { + return $db->affectedRows(); + } else { + return false; + } } function wfLastDBquery( $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->lastQuery(); + if ( $db !== false ) { + return $db->lastQuery(); + } else { + return false; + } } function wfSetSQL( $table, $var, $value, $cond, $dbi = DB_WRITE ) { $db =& wfGetDB( $dbi ); - return $db->set( $table, $var, $value, $cond ); + if ( $db !== false ) { + return $db->set( $table, $var, $value, $cond ); + } else { + return false; + } } function wfGetSQL( $table, $var, $cond="", $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->get( $table, $var, $cond ); + if ( $db !== false ) { + return $db->get( $table, $var, $cond ); + } else { + return false; + } } function wfFieldExists( $table, $field, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->fieldExists( $table, $field ); + if ( $db !== false ) { + return $db->fieldExists( $table, $field ); + } else { + return false; + } } function wfIndexExists( $table, $index, $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->indexExists( $table, $index ); + if ( $db !== false ) { + return $db->indexExists( $table, $index ); + } else { + return false; + } } function wfInsertArray( $table, $array, $fname = "wfInsertArray", $dbi = DB_WRITE ) { $db =& wfGetDB( $dbi ); - return $db->insertArray( $table, $array, $fname ); + if ( $db !== false ) { + return $db->insertArray( $table, $array, $fname ); + } else { + return false; + } } function wfGetArray( $table, $vars, $conds, $fname = "wfGetArray", $dbi = DB_LAST ) { $db =& wfGetDB( $dbi ); - return $db->getArray( $table, $vars, $conds, $fname ); + if ( $db !== false ) { + return $db->getArray( $table, $vars, $conds, $fname ); + } else { + return false; + } } function wfUpdateArray( $table, $values, $conds, $fname = "wfUpdateArray", $dbi = DB_WRITE ) { $db =& wfGetDB( $dbi ); - $db->updateArray( $table, $values, $conds, $fname ); + if ( $db !== false ) { + $db->updateArray( $table, $values, $conds, $fname ); + return true; + } else { + return false; + } } ?>