From e491e929fe8bec5583a0585a2f5e0258a9e1a61f Mon Sep 17 00:00:00 2001 From: Devops Date: Fri, 12 May 2017 17:42:01 +0100 Subject: [PATCH] lib/php/db/table.php --- lib/php/db/table.php | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/lib/php/db/table.php b/lib/php/db/table.php index 76a2324c..61bfe586 100644 --- a/lib/php/db/table.php +++ b/lib/php/db/table.php @@ -1641,6 +1641,7 @@ Class Table extends nb { $keys_values = []; $fields = []; $fields_values = []; + $bindParam = false; # NB 12.05.17: Not working ???? foreach ($this->fields() as $name => $field) { @@ -1699,7 +1700,7 @@ Class Table extends nb { #$info['sql'] = $sql; $info = [ 'sql' => $sql ] + $info; - if (!($query = $this->db()->conn->prepare($sql))) { + if ($bindParam and !($query = $this->db()->conn->prepare($sql))) { err('PDO::errorInfo(): ' .join(' ', $this->db()->conn->errorInfo()) .NB_EOL); return false; } @@ -1708,17 +1709,20 @@ Class Table extends nb { #debug("$name: ".$post[$name]); $row = [ $name => $post[$name] ]; $this->db()->table_row_encrypt($this,$row); - $field->bindParam($query,$row[$name],":$name"); - #$sql = str_replace(":$name",$row[$name],$sql); + if ($bindParam) $field->bindParam($query,$row[$name],":$name"); + $sql = str_replace(":$name",$this->field($name)->quote($row[$name]),$sql); } foreach ($keys as $name) { #debug("$name: ".$post[$name]); - $field->bindParam($query,$post[$name],":key_$name"); - #$sql = str_replace(":key_$name",$row[$name],$sql); + if ($bindParam) $field->bindParam($query,$post[$name],":key_$name"); + $sql = str_replace(":key_$name",$this->field($name)->quote($post[$name]),$sql); } $info['sql'] = $sql; + if (!$bindParam) { + $query = $this->db()->conn->prepare($sql); + } #return $sql; if (self::p('debug')) { $this->debug($info,1); @@ -1730,9 +1734,8 @@ Class Table extends nb { return false; } - #$info['rowCount'] = $query->rowCount(); $info = [ 'rowCount' => $query->rowCount()] + $info; - debug($info); return 0; + #debug($info); return 0; return $info['rowCount']; } -- 2.47.3