fix: set WHERE for DELET statement only if conditions are provided

This commit is contained in:
Victor Westerlund 2025-07-29 09:40:15 +02:00
parent ddcd8a2961
commit dfd800e263
Signed by: vlw
GPG key ID: D0AD730E1057DFC6

View file

@ -268,9 +268,14 @@
$this->throw_if_no_table();
// Set DELETE WHERE conditions from arguments
$this->where(...$conditions);
if ($conditions) {
$this->where(...$conditions);
}
$sql = "DELETE FROM `{$this->table}` WHERE {$this->filter_sql}";
// Get array of SQL WHERE string and filter values
$filter_sql = !is_null($this->filter_sql) ? " WHERE {$this->filter_sql}" : "";
$sql = "DELETE FROM `{$this->table}`{$this->filter_sql}";
return $this->execute_query($sql, self::to_list_array($this->filter_values));
}