diff options
| author | Damien Regad <dregad@mantisbt.org> | 2021-08-17 00:30:04 +0200 |
|---|---|---|
| committer | Damien Regad <dregad@mantisbt.org> | 2021-08-17 00:30:04 +0200 |
| commit | 507466ef798b18a3a8830230cfcd51bb488513cf (patch) | |
| tree | 8b6ddc09e077883e9b0567d9c3b1c5249884ea09 /adodb-lib.inc.php | |
| parent | 20b01e83cb61b6b2460f64c7d1277c5f4cc28574 (diff) | |
| download | adodb-507466ef798b18a3a8830230cfcd51bb488513cf.tar.gz adodb-507466ef798b18a3a8830230cfcd51bb488513cf.tar.bz2 adodb-507466ef798b18a3a8830230cfcd51bb488513cf.zip | |
Revert changes since Standardized file headers merge
The conflicts resolution applied when merging the Standardized file
headers (commit e9dcce3df24912ad869d0193f0b419f2309101fc) was seriously
messed up, actually overwriting a number of changes in the master
branch.
Rather than trying to go and fix things one by one which has a high risk
of messing things further, it's easier to redo the merge from a clean
slate, so this commit reverts the following:
- "Merge branch 'hotfix/5.21' Standardized file headers",
e9dcce3df24912ad869d0193f0b419f2309101fc
- "Merge tag 'v5.21.1'",
5f437df3104159d5d659f60e31bef8d33c34995f
- "Reset version to 5.22.0-dev"
af9234a525c3255af051a330164486d73be4c63a
- "Fix incorrect resolution of merge conflicts"
a6733f61b0165b366c8d2c70d9af82edc3881951.
- "Fix syntax error in toexport.inc.php"
20b01e83cb61b6b2460f64c7d1277c5f4cc28574.
Fixes #751
Diffstat (limited to 'adodb-lib.inc.php')
| -rw-r--r-- | adodb-lib.inc.php | 109 |
1 files changed, 44 insertions, 65 deletions
diff --git a/adodb-lib.inc.php b/adodb-lib.inc.php index ced5e126..35e9eca5 100644 --- a/adodb-lib.inc.php +++ b/adodb-lib.inc.php @@ -1,32 +1,22 @@ <?php -/** - * Helper functions. - * - * Less commonly used functions are placed here to reduce size of adodb.inc.php. - * - * This file is part of ADOdb, a Database Abstraction Layer library for PHP. - * - * @package ADOdb - * @link https://adodb.org Project's web site and documentation - * @link https://github.com/ADOdb/ADOdb Source code and issue tracker - * - * The ADOdb Library is dual-licensed, released under both the BSD 3-Clause - * and the GNU Lesser General Public Licence (LGPL) v2.1 or, at your option, - * any later version. This means you can use it in proprietary products. - * See the LICENSE.md file distributed with this source code for details. - * @license BSD-3-Clause - * @license LGPL-2.1-or-later - * - * @copyright 2000-2013 John Lim - * @copyright 2014 Damien Regad, Mark Newnham and the ADOdb community - */ - // security - hide paths if (!defined('ADODB_DIR')) die(); global $ADODB_INCLUDED_LIB; $ADODB_INCLUDED_LIB = 1; +/* + @version v5.21.1-dev Unreleased + @copyright (c) 2000-2013 John Lim (jlim#natsoft.com). All rights reserved. + @copyright (c) 2014 Damien Regad, Mark Newnham and the ADOdb community + 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. See License.txt. + Set tabs to 4 for best viewing. + + Less commonly used functions are placed here to reduce size of adodb.inc.php. +*/ + function adodb_strip_order_by($sql) { $rez = preg_match_all('/(\sORDER\s+BY\s(?:[^)](?!LIMIT))*)/is', $sql, $arr); @@ -673,50 +663,10 @@ function _adodb_pageexecute_no_last_page(&$zthis, $sql, $nrows, $page, $inputarr return $rsreturn; } -/** - * Performs case conversion and quoting of the given field name. - * - * See Global variable $ADODB_QUOTE_FIELDNAMES. - * - * @param ADOConnection $zthis - * @param string $fieldName - * - * @return string Quoted field name - */ -function _adodb_quote_fieldname($zthis, $fieldName) +function _adodb_getupdatesql(&$zthis, &$rs, $arrFields, $forceUpdate=false, $force=2) { global $ADODB_QUOTE_FIELDNAMES; - // Case conversion - defaults to UPPER - $case = is_bool($ADODB_QUOTE_FIELDNAMES) ? 'UPPER' : $ADODB_QUOTE_FIELDNAMES; - switch ($case) { - case 'LOWER': - $fieldName = strtolower($fieldName); - break; - case 'NATIVE': - // Do nothing - break; - case 'UPPER': - case 'BRACKETS': - default: - $fieldName = strtoupper($fieldName); - break; - } - - // Quote field if requested, or necessary (field contains space) - if ($ADODB_QUOTE_FIELDNAMES || strpos($fieldName, ' ') !== false ) { - if ($ADODB_QUOTE_FIELDNAMES === 'BRACKETS') { - return $zthis->leftBracket . $fieldName . $zthis->rightBracket; - } else { - return $zthis->nameQuote . $fieldName . $zthis->nameQuote; - } - } else { - return $fieldName; - } -} - -function _adodb_getupdatesql(&$zthis, &$rs, $arrFields, $forceUpdate=false, $force=2) -{ if (!$rs) { printf(ADODB_BAD_RS,'GetUpdateSQL'); return false; @@ -762,7 +712,21 @@ function _adodb_getupdatesql(&$zthis, &$rs, $arrFields, $forceUpdate=false, $for $type = 'C'; } - $fnameq = _adodb_quote_fieldname($zthis, $field->name); + if ((strpos($upperfname,' ') !== false) || ($ADODB_QUOTE_FIELDNAMES)) { + switch ($ADODB_QUOTE_FIELDNAMES) { + case 'BRACKETS': + $fnameq = $zthis->leftBracket.$upperfname.$zthis->rightBracket;break; + case 'LOWER': + $fnameq = $zthis->nameQuote.strtolower($field->name).$zthis->nameQuote;break; + case 'NATIVE': + $fnameq = $zthis->nameQuote.$field->name.$zthis->nameQuote;break; + case 'UPPER': + default: + $fnameq = $zthis->nameQuote.$upperfname.$zthis->nameQuote;break; + } + } else { + $fnameq = $upperfname; + } //********************************************************// if (is_null($arrFields[$upperfname]) @@ -888,6 +852,7 @@ function _adodb_getinsertsql(&$zthis, &$rs, $arrFields, $force=2) static $cacheRS = false; static $cacheSig = 0; static $cacheCols; + global $ADODB_QUOTE_FIELDNAMES; $tableName = ''; $values = ''; @@ -938,7 +903,21 @@ static $cacheCols; $upperfname = strtoupper($field->name); if (adodb_key_exists($upperfname,$arrFields,$force)) { $bad = false; - $fnameq = _adodb_quote_fieldname($zthis, $field->name); + if ((strpos($upperfname,' ') !== false) || ($ADODB_QUOTE_FIELDNAMES)) { + switch ($ADODB_QUOTE_FIELDNAMES) { + case 'BRACKETS': + $fnameq = $zthis->leftBracket.$upperfname.$zthis->rightBracket;break; + case 'LOWER': + $fnameq = $zthis->nameQuote.strtolower($field->name).$zthis->nameQuote;break; + case 'NATIVE': + $fnameq = $zthis->nameQuote.$field->name.$zthis->nameQuote;break; + case 'UPPER': + default: + $fnameq = $zthis->nameQuote.$upperfname.$zthis->nameQuote;break; + } + } else + $fnameq = $upperfname; + $type = $recordSet->MetaType($field->type); /********************************************************/ |
