* baseDAO: do not convert null values or numbers to strings.

This commit is contained in:
liugang
2023-05-23 14:24:56 +08:00
parent 228b74488d
commit a10fdda8b9
+5 -11
View File
@@ -621,18 +621,9 @@ class baseDAO
foreach($this->sqlobj->data as $field => $value)
{
if(strpos($skipFields, ",$field,") !== false) continue;
$fields .= "`{$field}`,";
if(is_string($value))
{
$value = $this->sqlobj->quote($value);
}
elseif($value === null)
{
$value = 'NULL';
}
$values .= $value . ',';
$values .= $this->sqlobj->quote($value) . ',';
}
$fields = substr($fields, 0, -1);
$values = substr($values, 0, -1);
@@ -2328,6 +2319,9 @@ class baseSQL
*/
public function quote($value)
{
if(is_null($value)) return 'NULL';
if(is_int($value) || is_float($value)) return $value;
if($this->magicQuote) $value = stripslashes($value);
return $this->dbh->quote((string)$value);
}