$keys_values = [];
$fields = [];
$fields_values = [];
+ $bindParam = false; # NB 12.05.17: Not working ????
foreach ($this->fields() as $name => $field) {
#$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;
}
#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);
return false;
}
- #$info['rowCount'] = $query->rowCount();
$info = [ 'rowCount' => $query->rowCount()] + $info;
- debug($info); return 0;
+ #debug($info); return 0;
return $info['rowCount'];
}