Ladění dotazů MySQL ve formulářích správce
Kontrola a analýza dotazů SQL

Formuláře správce Bootstrap jsou vytvořeny pomocí nástroje PHP Form Builder. Jsou umístěny ve složce admin/inc/forms/.


O formulářích správce a třídě PDO nástroje PHP Form Builder

Nástroj PHP Form Builder je součástí balíčku PHP CRUD Generator.
Se všemi jeho funkcemi a zásuvnými moduly.

Dotazy MySQL odesílané do databáze jsou sestaveny pomocí obalové třídy PDO nástroje PHP Form Builder.

Dokumentace a ukázkové kódy jsou k dispozici zde na webových stránkách nástroje PHP Form Builder.

PHP Form Builder
Nástroj pro tvorbu formulářů PHP

Všechny formuláře správce jsou umístěny ve stejné složce admin/inc/forms/.

Každá tabulka používá 3 formuláře:

  • table-create.php
  • table-edit.php
  • table-delete.php

kde"table" je sanitizovaný název vaší tabulky.

Všechny akce (záznamy v databázi) se po validaci provádějí ve stejných souborech.


Jak zobrazit databázové dotazy a/nebo chyby

V generátoru CRUD jsou k dispozici dvě možnosti konfigurace.
První umožňuje zobrazit podrobnosti pouze v případě, že dotaz SQL selže a dojde k chybě, zatímco druhá systematicky zobrazuje podrobnosti všech dotazů SQL (režim DEBUG).

The PHP CRUD DEBUG option
Možnost PHP CRUD DEBUG

Možnost "Zobrazit chyby databáze"

Tuto možnost aktivujte na kartě "Konfigurace" generátoru CRUD.

Pokud dotaz SQL vrátí chybu, zobrazí se na obrazovce podrobnosti o dotazu včetně dotazu ve formátu PDO se zástupnými znaky, dotazu vygenerovaného ve formátu SQL odeslaného na server a chybové zprávy vrácené databází.

Režim ladění

Na kartě "Konfigurace" generátoru CRUD aktivujte režim "Ladění ".

Když je aktivován režim ladění, všechny dotazy se na obrazovce zobrazují podrobně, a to jak v seznamech, tak ve formulářích správce.
Podrobnosti každého dotazu jsou k dispozici ve formátu PDO s libovolnými zástupnými znaky, filtry a volbami a ve formátu SQL, jak je přijímá databáze.

Když je povolen režim DEBUG. Dotazy INSERT, UPDATE a DELETE jsou pouze simulovány, což umožňuje ladění, aniž by došlo ke změně záznamů.


Dotazy SQL pak můžete zkopírovat/vložit přímo do správce databáze (PhpMyAdmin nebo podobného).
Na oplátku uvidíte, zda má některé pole neplatnou hodnotu nebo zda je v dotazu nějaký jiný problém.


Pokud dotaz funguje ve správci databáze, ale ne v PHPCG, může to mít dvě příčiny:

  1. Uživatel MySQL, pod kterým se připojujete z PHPCG, nemá dostatečná práva k provedení dotazu (zkontrolujte práva uživatelů MySQL).
  2. Tabulka, na kterou se dotazuje, nesplňuje předpoklady, zejména každá tabulka musí mít automaticky obnovovaný primární klíč. Pokud tomu tak není, záznamy se sice z panelu správce vloží/editují, ale program při záznamu vrátí chybu.
    Kontrolu můžete provést z generátoru, v části Sestavení vytvoření / aktualizace formulářů. Pokud vaše tabulka skutečně má automaticky obnovovaný primární klíč, měli byste pod názvem pole vidět odznaky PRIMARY a AUTO-INCREMENT.

Předpoklady

Chcete-li upravit formuláře správce Bootstrap, musíte předem:

Hlavní stránka výukového programu PHP CRUD