From d2277c6d9d9e4f32d6594df63a39d9ab76ddadf5 Mon Sep 17 00:00:00 2001 From: Jacek Pyziak Date: Mon, 23 Feb 2026 17:51:37 +0100 Subject: [PATCH] =?UTF-8?q?ver.=200.315:=20fix=20PDOException=20w=20listow?= =?UTF-8?q?aniu=20atrybut=C3=B3w=20admin?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit AttributeRepository::listForAdmin() przekazywał :default_lang_id do zapytania COUNT które nie używało tego parametru — PDO zgłaszał SQLSTATE[HY093]: Invalid parameter number. Co-Authored-By: Claude Opus 4.6 --- autoload/Domain/Attribute/AttributeRepository.php | 2 +- docs/CHANGELOG.md | 6 ++++++ updates/versions.php | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/autoload/Domain/Attribute/AttributeRepository.php b/autoload/Domain/Attribute/AttributeRepository.php index 5ee084f..3e8455a 100644 --- a/autoload/Domain/Attribute/AttributeRepository.php +++ b/autoload/Domain/Attribute/AttributeRepository.php @@ -48,7 +48,7 @@ class AttributeRepository FROM pp_shop_attributes AS sa WHERE {$whereSql} "; - $stmtCount = $this->db->query($sqlCount, $params); + $stmtCount = $this->db->query($sqlCount, $whereData['params']); $countRows = $stmtCount ? $stmtCount->fetchAll() : []; $total = isset($countRows[0][0]) ? (int)$countRows[0][0] : 0; diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 354247d..ca46290 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -4,6 +4,12 @@ Logi zmian z migracji na Domain-Driven Architecture. Najnowsze na gorze. --- +## ver. 0.315 (2026-02-23) - Fix listowania atrybutów w admin + +- **FIX**: `AttributeRepository::listForAdmin()` — zapytanie COUNT dostawało parametr `:default_lang_id` którego nie miało w SQL, powodując `PDOException: SQLSTATE[HY093]: Invalid parameter number`. Parametr potrzebny tylko w głównym SELECT, nie w COUNT + +--- + ## ver. 0.314 (2026-02-23) - Fix wyszukiwarki admin + title zamówienia - **FIX**: Globalna wyszukiwarka w panelu admina przestała zwracać wyniki — dodano `Content-Type: application/json` i `Cache-Control: no-store` (zapobiega cache'owaniu przez proxy/CDN), zmiana AJAX z GET na POST, `fetchAll(PDO::FETCH_ASSOC)`, top-level try/catch z gwarantowaną odpowiedzią JSON diff --git a/updates/versions.php b/updates/versions.php index 5b4df9d..f2ecd89 100644 --- a/updates/versions.php +++ b/updates/versions.php @@ -1,5 +1,5 @@