Comment visualiser la requête MySQL envoyée par un formulaire d'administration ?

Les formulaires d'administration Bootstrap sont construits avec PHP Form Builder. Ils se trouvent dans le dossier admin/inc/forms/.


A propos des formulaires d'administration et de la classe PDO de PHP Form Builder

PHP Form Builder est inclus dans le package de PHP CRUD Generator.
Avec toutes ses fonctionnalités et plugins.

Les requêtes MySQL envoyées à votre base de données sont construites avec la classe PDO de PHP Form Builder.

La documentation et les exemples de codes sont disponibles ici sur le site de PHP Form Builder.

PHP Form Builder
PHP Form Builder

Tous les formulaires d'administration se trouvent dans le même dossier, à savoir admin/inc/forms/.

Chaque tableau utilise 3 formulaires:

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

"table" est le nom assaini de votre table.

Toutes les actions (enregistrements dans la base de données) sont effectuées dans les mêmes fichiers après validation.


Comment afficher les requêtes et/ou les erreurs de la base de données ?

A partir du générateur CRUD, deux options de configuration sont disponibles.
La première permet de n'afficher les détails que lorsqu'une requête SQL échoue et qu'une erreur survient, tandis que la seconde affiche systématiquement les détails de toutes les requêtes SQL (mode DEBUG).

The PHP CRUD DEBUG option
L'option PHP CRUD DEBUG

L'option "Afficher les erreurs de la base de données".

Activez cette option dans l'onglet "Configuration" du générateur CRUD.

Lorsqu'une requête SQL renvoie une erreur, les détails de la requête sont affichés à l'écran, y compris la requête au format PDO avec des espaces réservés, la requête générée au format SQL envoyée au serveur et le message d'erreur renvoyé par la base de données.

Le mode Débogage

Activez le mode "Debug" à partir de l'onglet "Configuration" du générateur CRUD.

Lorsque le mode Debug est activé, toutes les requêtes sont affichées en détail à l'écran, à la fois dans les listes et dans les formulaires d'administration.
Les détails de chaque requête sont disponibles en PDO avec tous les espaces réservés, filtres et options, et au format SQL tel que la base de données les reçoit.

Avec le mode DEBUG activé. Les requêtes INSERT, UPDATE et DELETE sont uniquement simulées, ce qui permet de déboguer sans modifier vos enregistrements.


Vous pouvez ensuite copier/coller vos requêtes SQL directement dans votre gestionnaire de base de données (PhpMyAdmin ou similaire).
Vous verrez en retour si un champ a une valeur invalide, ou s'il y a un autre problème dans la requête.


Si la requête fonctionne dans votre gestionnaire de base de données mais pas dans le PHPCG, il peut y avoir deux causes :

  1. L'utilisateur MySQL avec lequel vous vous connectez à partir de PHPCG n'a pas les privilèges suffisants pour effectuer la requête (vérifiez les privilèges de vos utilisateurs MySQL).
  2. La table sur laquelle la requête est effectuée ne remplit pas les conditions requises. En particulier, chaque table doit avoir une clé primaire auto-incrémentée. Si ce n'est pas le cas, les enregistrements sont tout de même insérés / modifiés depuis l'Interface d'administration, mais le programme renvoie le message Error while recording.
    Vous pouvez vérifier à partir du générateur, dans la partie Construire les formulaires de création/mise à jour. Si votre table a une clé primaire auto-incrémentée, vous devriez voir les badges PRIMARY et AUTO-INCREMENT sous le nom du champ.

Conditions préalables

Pour éditer les formulaires d'administration Bootstrap, vous devez au préalable :

Page principale du tutoriel CRUD PHP