diff options
| author | Konstantin Tarasov <ktarasov@peredelka-saitov.ru> | 2025-06-24 16:21:52 +0300 |
|---|---|---|
| committer | Damien Regad <dregad@mantisbt.org> | 2025-11-22 12:11:10 +0100 |
| commit | c121a1aa1f82dd9a1d4509a1e7c7a18d44416d83 (patch) | |
| tree | a1e19c88b69a7f45a111495f666bec856f139257 | |
| parent | f44e474d39ec24f6b0cb0a5d656bb371ce7acd12 (diff) | |
| download | adodb-c121a1aa1f82dd9a1d4509a1e7c7a18d44416d83.tar.gz adodb-c121a1aa1f82dd9a1d4509a1e7c7a18d44416d83.tar.bz2 adodb-c121a1aa1f82dd9a1d4509a1e7c7a18d44416d83.zip | |
Active record: handle empty string in dbquote()
The method did not generate the appropriate quote for empty strings,
resulting in invalid SQL syntax in the UPDATE statement's where clause.
Fix #1073, PR #1074
| -rw-r--r-- | adodb-active-record.inc.php | 6 | ||||
| -rw-r--r-- | adodb-active-recordx.inc.php | 5 |
2 files changed, 8 insertions, 3 deletions
diff --git a/adodb-active-record.inc.php b/adodb-active-record.inc.php index 08f7ca8d..4790e074 100644 --- a/adodb-active-record.inc.php +++ b/adodb-active-record.inc.php @@ -717,7 +717,7 @@ class ADODB_Active_Record { } // quote data in where clause - function doquote(&$db, $val,$t) + function doquote(&$db, $val, $t) { switch($t) { case 'L': @@ -736,7 +736,9 @@ class ADODB_Active_Record { if (is_null($val)) { return 'null'; } - + if ('' === (string) $val) { + return "''"; + } if (strlen($val)>0 && (strncmp($val,"'",1) != 0 || substr($val,strlen($val)-1,1) != "'") ) { diff --git a/adodb-active-recordx.inc.php b/adodb-active-recordx.inc.php index 18e2a189..21ab47b2 100644 --- a/adodb-active-recordx.inc.php +++ b/adodb-active-recordx.inc.php @@ -762,7 +762,7 @@ class ADODB_Active_Record { } // quote data in where clause - function doquote(&$db, $val,$t) + function doquote(&$db, $val, $t) { switch($t) { case 'D': @@ -775,6 +775,9 @@ class ADODB_Active_Record { if (is_null($val)) { return 'null'; } + if ('' === (string) $val) { + return "''"; + } if (strlen($val)>0 && (strncmp($val,"'",1) != 0 || substr($val,strlen($val)-1,1) != "'") ) { |
